C# 在foreach上(id中的var id)对象引用未设置为对象c的实例

C# 在foreach上(id中的var id)对象引用未设置为对象c的实例,c#,C#,错误在ids中的foreach var id行中,如何解决 或者: ids为null,因为您更可能使用null作为参数调用Post。 GetEnumerator返回null,因为实际类型的ID没有正确实现此方法的可能性较小。 正如谢尔盖所说: public void Post(IEnumerable<int> ids) { foreach (var id in ids) { string postIdVal = AddP

错误在ids中的foreach var id行中,如何解决

或者:

ids为null,因为您更可能使用null作为参数调用Post。 GetEnumerator返回null,因为实际类型的ID没有正确实现此方法的可能性较小。 正如谢尔盖所说:

    public void Post(IEnumerable<int> ids)
    {
        foreach (var id in ids)
        {
        string postIdVal = AddPublicationOnMonster(id);
        string url = string.Format("http://jobview.monster.com/getjob.aspx?JobID={0}",             postIdVal);
        System.Diagnostics.Process.Start(url); ;
        }   


    }

在迭代之前,应该检查集合是否实例化。 检查它是否为空:

public void Post(IEnumerable<int> ids)
{
    if(ids != null)
    {
        foreach (var id in ids)
        {
            string postIdVal = AddPublicationOnMonster(id);
            string url = string.Format("http://jobview.monster.com/getjob.aspx?JobID={0}",             postIdVal);
             System.Diagnostics.Process.Start(url); ;
        }   
    }
}

ID为空。要解决-不要将null传递给此methodException是自解释的。传递给Post的是什么,请显示该代码。如果要忽略传递null,只需在开始时检查并从方法返回。
if (ids != null)
{
    foreach (var id in ids)
    {
    string postIdVal = AddPublicationOnMonster(id);
    string url = string.Format("http://jobview.monster.com/getjob.aspx?JobID={0}",             postIdVal);
    System.Diagnostics.Process.Start(url); ;
    }   
}
else
{
    DoSomething();
}