ASP.NET将项添加到数组

时间:2016-01-28 15:37:44

标签: c# asp.net

我定义了这个数组:

string[] emailAddress = {};

我要做的是将项添加到此数组中,如下所示:

emailAddress[] = de.Properties["mail"][0].ToString();

我得到一个无法将字符串转换为数组错误。如何将项添加到数组中?

5 个答案:

答案 0 :(得分:4)

string[] emailAddress = new string[1]; // initialize it to a length of 1
emailAddress[0] = de.Properties["mail"][0].ToString(); // assign the string to position 1

如果您不知道运行时的长度,那么请使用通用List并在之后进行转换。

var emailAddress = new List<string>();
emailAddress.Add(de.Properties["mail"][0].ToString());
var myArray = emailAddress.ToArray(); // create an array from the list

我建议您阅读本文,了解如何在c#(或其他一些教程)中使用数组。 https://msdn.microsoft.com/en-us/library/aa288453(v=vs.71).aspx

答案 1 :(得分:3)

您必须先使用固定大小初始化数组:

string[] emailAddress = new string[5];  // array with 5 items

然后你可以添加这样的项目:

emailAddress[0] = de.Properties["mail"][0].ToString();

但是考虑是否可以使用更灵活的List<string>

答案 2 :(得分:3)

根据您的评论必须一个数组并且不能成为一个列表,这可能就是您所需要的。

使用特定长度实例化数组。像这样的东西

string[] emailAddress = new string[emailAddressde.Properties["mail"].Length];

然后你可以通过

之类的东西进行循环
for (var i = 0; i < de.Properties["mail"].Length; i++)
    emailAddress[i] = de.Properties["mail"][i].ToString();

填充emailAddress数组。

答案 3 :(得分:0)

您需要引用数组中的某个位置,您要做的是将您的值指定为数组。

emailAddress[0] = de.Properties["mail"][0].ToString();

答案 4 :(得分:0)

如果您知道阵列的大小,那么您可以将阵列初始化为静态大小。例如,如果您知道电子邮件数组将只有2个项目(索引0和1),那么您可以将数组初始化为此大小

string [] emailAddress = string [2];

如果数组中的项目未知(有多少个电子邮件地址),您应该使用其他内容,例如

列出emailAddresses = new List();

这样的事情:

List<string> emailAddresses = new List<string>();
emailAddresses.Add("youremail@mail.com");
emailAddresses.ToArray();