将“新”数组从VB.Net转换为C#

时间:2011-12-09 11:51:44

标签: c# vb.net arrays new-operator

我正在尝试将一些代码从VB.Net转换为C#,但我遇到了一个问题。

我要翻译的Vb.Net代码行是:

client.Applicants = New wcf_Integration.Applicant() {New wcf_Integration.Applicant}

我试图将其翻译为:

Client.Applicants = new wcf_Integration.Applicant[1];
Client.Applicants[0] = new Applicant();

然而,这给了我一个讨厌的'对象引用没有设置为对象的实例'错误。

对此的任何帮助将非常感谢。 :)

3 个答案:

答案 0 :(得分:4)

您还可以使用数组初始值设定语法

// Typed implicitly (type inferred by compiler).
Clients.Applicants = new[] { new Applicant(), ... };

// Typed explicitly.
Clients.Applicants = new Applicant[] { new Applicant(), ... };

答案 1 :(得分:1)

可能Client为空。所以Client.Applicants会引发异常。它与数组无关。

答案 2 :(得分:0)

试试这个:

var myApplicants = new wcf_Integration.Applicant[1];
myApplicants[0] = new Applicant();