编译器错误 CS0746
无效的匿名类型成员声明符。 匿名类型成员必须使用成员赋值、简单名称或成员访问来声明。
匿名类型必须使用成员赋值、简单名称或成员访问来声明。
- 确保声明仅使用成员赋值、简单名称或成员访问表达式。
下面的代码在使用 incorrect_1
和 incorrect_2
的声明时生成 CS0746。 下面的声明显示了两种用于声明匿名类型的正确方法。
// cs0746.cs
public class C
{
public static int Main()
{
int i = 100;
string s = "Bottles of beer.";
var incorrect_1 = new { a.b = 1 }; // CS0746
var incorrect_2 = new {100, "Bottles of beer."}; // CS0746
var correct_1 = new { i, s }; //OK
var correct_2 = new {num = i, message = s}; // OK
return 1;
}
}