你能在C#中做这样的事吗
var GetSomething()
{
var x = new { a = "b", i = 1 };
return x;
}
或者我可以做任何替代方案吗?关于返回的类型是,我知道这一点。我正在寻找更通用的东西:D
答案 0 :(得分:3)
var
是语法糖 - 它不是缺乏类型。类型在编译时确定。
它只能在方法中使用。
也许您希望改用dynamic
。
动态类型使其发生的操作可以绕过编译时类型检查。相反,这些操作在运行时解决。
dynamic GetSomething()
{
dynamic x = new { a = "b", i = 1 };
return x;
}
答案 1 :(得分:0)
var a = GetSomething();
static Object GetSomething()
{
var x = new { a = "b", i = 1 };
return (Object)x;
}
匿名类型可以从方法返回,但必须强制转换为对象,这违背了强类型的目的。
答案 2 :(得分:0)
我设法返回匿名类型。我把它作为一个对象返回然后再投射它。感谢任何回答:D
的人object GetSomething()
{
var x = new { a = "b", i = 1 };
return x;
}