Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/275.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
填充c#数组时出错_C# - Fatal编程技术网

填充c#数组时出错

填充c#数组时出错,c#,C#,我正试图这样做,但得到语法错误。我做错什么了吗?我是否每次都必须创建一个特定的类来适应这些对象 var groups = [ { id: 1, name: 'Conversation' }, { id: 2, name: 'Business' }, { id: 27, name: 'Animals' } ]; 那不是C;尝试: 也就是说。。。使用匿名类型很尴尬;您可能希望声明一个具有Id和名称的类型,并使用它: var groups = new [] { new

我正试图这样做,但得到语法错误。我做错什么了吗?我是否每次都必须创建一个特定的类来适应这些对象

var groups = [
    { id: 1, name: 'Conversation' },
    { id: 2, name: 'Business' },
    { id: 27, name: 'Animals' }
];
那不是C;尝试:

也就是说。。。使用匿名类型很尴尬;您可能希望声明一个具有
Id
名称的类型,并使用它:

var groups = new [] {
    new Foo { Id = 1, Name = "Conversation" },
    new Foo { Id = 2, Name = "Business" },
    new Foo { Id = 27, Name ="Animals" }
};
...
class Foo {
     public int  Id {get;set;}
     public string Name {get;set;}
}
试试这个:

var groups = new object[] { new { id=1, name="Conversation" },
new { id=1, name="Conversation" },
new { id=1, name="Conversation" }
};

在我看来像javascript…添加
对象
意味着您丢弃了匿名类型的类型信息;这是一个糟糕的想法我会选择
结构而不是
@alfiegoodacreno;这不会编译,即使编译了:它也不能正确地表达多重性。我认为我所展示的代码是最接近javascript的version@MarcGravell感谢你澄清了这一点,我不知道C#文档说这是有效的
int[]numbers={1,2,3,4,5}-我想那只是为了显式输入?@AlfieGoodacre正确;在匿名类型的情况下,唯一的表达方式是通过
var x=new[]{new{…},new{…}
-是
Foo[]x=
告诉编译器需要一个数组,而您不能将它用于匿名类型。
var groups = new object[] { new { id=1, name="Conversation" },
new { id=1, name="Conversation" },
new { id=1, name="Conversation" }
};