C# 列表<;T>;。addrange()不工作

C# 列表<;T>;。addrange()不工作,c#,asp.net,C#,Asp.net,我有财产: public List<RequestCheckListDetail> DocumentChecklistMasterList { get { if (ViewState["DocumentChecklistMasterList"].IsObjectUsable()) _documentChecklistMasterList = (List<RequestCheckListDetail>)ViewStat

我有财产:

public List<RequestCheckListDetail> DocumentChecklistMasterList
{
    get
    {
        if (ViewState["DocumentChecklistMasterList"].IsObjectUsable())
            _documentChecklistMasterList = (List<RequestCheckListDetail>)ViewState["DocumentChecklistMasterList"];
        else
            this._documentChecklistMasterList = new List<RequestCheckListDetail>();
        return this._documentChecklistMasterList;
    }

    set { ViewState["DocumentChecklistMasterList"] = value; }
}
这些代码都不能正常工作。 我仍然无法将项目添加到
DocumentChecklistMasterList

请帮助我:

编辑:

IsObjectUsable()是我为检查对象是否为null而添加的扩展方法

 public static bool IsObjectUsable(this object checkObject)
    {
        bool isUsable = true;

        if (checkObject == null || checkObject == DBNull.Value)
        {
            isUsable = false;
        }

        return isUsable;
    }

您收到的错误是什么?我没有收到任何错误,但列表始终显示计数为“0”。您如何检查列表中的值?此行
ViewState[“DocumentChecklistMasterList”]。IsObjectUsable()
可能总是返回
false
。找出原因。我只是使用调试器点调试代码,并将列表绑定到gridview
List<RequestCheckListDetail> newList = new List<RequestCheckListDetail>();

    int i = 0;
    foreach (DocumentCheckListMaster item in list)
    {

        this.DocumentChecklistMasterList.Add(new RequestCheckListDetail
        {
            Id = i,
            CheckListMaster = item
        });
        i++;
    }


 List<RequestCheckListDetail> newList = new List<RequestCheckListDetail>();

    int i = 0;
    foreach (DocumentCheckListMaster item in list)
    {

        this.DocumentChecklistMasterList.Insert(i,
            new RequestCheckListDetail  {
            Id = i,
            CheckListMaster = item
        });
        i++;
    }
 public static bool IsObjectUsable(this object checkObject)
    {
        bool isUsable = true;

        if (checkObject == null || checkObject == DBNull.Value)
        {
            isUsable = false;
        }

        return isUsable;
    }