你能用显式转换声明一个匿名类型的变量吗?
例如,您可以这样做:
var student = new { ID = 1 , name = "Jim" };
但不是这个:
var student = new { int ID = 1 , string name = "Jim" };
目标是拥有一个变量:
- 只读
- 有多个具有默认值的显式类型属性
- 可以在方法中声明以供临时使用
至于“为什么?”的问题,这更多是我的一种信息好奇心。假设您希望 ID
为 Int64
。
最佳答案
不,匿名类型隐式确定数据类型。
Suppose you wanted ID to be an Int64.
然后通过 casting 明确说明到您需要的类型:
var student = new { ID = (long)1 , name = "Jim" };
或使用 suffix
var student = new { ID = 1L , name = "Jim" };
关于c# - 具有显式转换的匿名类型变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34905829/