C#foreach超出范围

Luc*_*uca 1 c# arrays

由于某种原因,我的阵列summary,subjectdate得到use of unassigned local variable错误.有谁知道最近发生了什么?

    int count = 0;
    string[] summary;
    string[] subject;
    string[] date;

    foreach (SyndicationItem item in feed.Items)
    {
        subject[count] = item.Title.Text;
        date[count] = item.PublishDate.DateTime.ToString();

        summary[count] = item.Summary.Text;
        list.InnerHtml += "<a href=\"#\" onclick\"showArticle(" + count + ");\"><li id=\"post" + count + "\"><b>" + subject[count] + "</b><br>" +
           "<p id=\"posted-date\">Posted on: " + date[count] + "</p>" + "</li></a>";
        count++; 
    } 
Run Code Online (Sandbox Code Playgroud)

Mat*_*ges 7

您需要将数组初始化为特定大小,例如:

string[] summary = new string[feed.Items.Count()];
Run Code Online (Sandbox Code Playgroud)

或者,List<String>如果您不了解或不关心数组的长度,则可以使用a 而不是数组.在您的情况下,列表实际上是可取的,因为Count()扩展方法将feed.Items在循环之前不必要地枚举.