c# - 当数据类型已知时使用 var 关键字

标签 c# anonymous-types

我越来越注意到我们的开发人员优先使用关键字 var 而不是实际转换类型,例如

var check = context.ALLProducts.Any();

显然 Any() 只会返回一个 bool 值,所以就我而言,它应该设置为一个 bool 值。我还看到过一些示例,其中 var 用于返回 Int 或字符串或任何我认为不应该使用 var 的类型的函数。

所以我的问题是 - 除了代码可读性和可支持性之外,是否有任何真正的原因让我对 var 被用于所有内容产生问题?如果可能的话,我想强化我的论点,而不是说我不喜欢它。

最佳答案

不确定链接中是否涵盖了这一点,但使用 var 关键字的好处是在需要重构模型的情况下。

举一个实例,其中函数需要更改返回值类型,但新类型与先前类型共享许多(如果不是全部)属性。如果您使用 var,则几乎不需要重构(如果有的话)。

现实世界的示例可能是开发人员从存储库返回 dto,但在绑定(bind)之前没有将其转换为 View 模型。如果您在模型中使用 var 并将其设置为翻译后的 View 模型,则您的操作中可能几乎不需要重构来调整更改后的类型。

关于c# - 当数据类型已知时使用 var 关键字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20213596/

相关文章:

c# - 动态创建匿名类型?

c# - LINQ 语句中匿名类型的等效 VB.NET 语法是什么?

c# - 为什么它不将 Bool 变量传递给另一个类?

c# - 在 mvc 中填充模型列表属性

c# - 通过物理环回在 2 个 TCP 应用程序之间发送数据。它会通过网卡吗?

c# - 我可以将匿名对象传递给需要类型对象引用参数的方法吗?

c# - 如何使用关键字作为属性名称?

asp.net - LINQ:不支持查询运算符 'ElementAtOrDefault'

c# - AES 128 跨平台 Swift/C#

c# - asp.net javascript 消息未显示