C# 实例化数组元素
我是C#的新手,所以这个问题对你们中的许多人来说可能微不足道。。。 我正在编写一个简单的应用程序,它使用某个网站的API。我正在使用和修改这个网站上的一个例子。 所以问题是,当我实例化一个(用简单的话来说)返回简单变量(比如string、int甚至用户定义类型)的对象时,一切似乎都正常工作,但当我尝试实例化一个作为用户定义类型的元素数组的元素时:C# 实例化数组元素,c#,arrays,C#,Arrays,我是C#的新手,所以这个问题对你们中的许多人来说可能微不足道。。。 我正在编写一个简单的应用程序,它使用某个网站的API。我正在使用和修改这个网站上的一个例子。 所以问题是,当我实例化一个(用简单的话来说)返回简单变量(比如string、int甚至用户定义类型)的对象时,一切似乎都正常工作,但当我尝试实例化一个作为用户定义类型的元素数组的元素时: request.@parameters.examplename = new somenamespace.SomeName.UserType()
request.@parameters.examplename = new somenamespace.SomeName.UserType();
键入“我收到如下消息”:
"Cannot implicitly convert type "somenamespace.SomeName.UserType' to 'somenamespace.SomeName.UserType[]'."
你能解释一下我做错了什么吗?是否有其他方法来实例化元素数组?如果您需要更多信息,请告诉我。鉴于您的错误输出,您的语法似乎不正确。您有一个名为
request.@parameters的UserType
数组(UserType[]
)。@parameters.examplename
,您正试图将UserType
对象分配给它newusertype()
调用对象上的构造函数
您需要的是一个新实例化的用户类型数组:
request.@parameters.examplename=new-somenamespace.SomeName.UserType[]代码>您应该将行更改为:
request.@parameters.examplename =
new somenamespace.SomeName.UserType[] { new somenamespace.SomeName.UserType() };
您当前正试图将单个UserType
值分配给需要UserType
数组的对象。因此,这可以通过创建一个数组(新[]
部分)并用UserType值填充它(部分)是的,数组将为空,但他的问题并没有说明他要求填充数组;然后@Deuces的下一个问题将是“当我试图访问数组的一个元素时,为什么会出现索引越界错误?”。所以这不是一种盲目回答问题的服务;答案应该力求回答更一般的问题,以便将来对其他人也有用。如果您怀疑@Deuces稍后会因为填充数组而感到困惑,那么要求澄清其问题的意图而不是做出假设会更有用,不是吗?回答问题而不是你认为他想问的问题?可能是重复的