将对象DataSource转换为List<>

时间:2011-07-21 18:43:19

标签: asp.net

尝试在gridview中获取数据并将其转换回列表,以便我可以运行更新功能。目前,当我尝试这个时,我得到一个空值。

List<CodeEntity> codes = new List<CodeEntity>();

codes = (List<CodeEntity>)Convert.ChangeType(gdvFGCode.DataSource,typeof(List<CodeEntity>));

Response.Write(codes[0].FGCode);

此外,由于Gridview包含3个模板字段,所有模板字段都包含控件,因此返回的数据源是否包含控件的更新值,或者它是否会返回原始List&lt;&gt;贴在上面。

编辑:我试图在列表中返回的课程

public class CodeEntity
{

    private string _fgCode;

    private Int16 _palletSet;

    private bool _priority;

    private int _codeState;

    private string _formingCode;

    private string _d4Code;

    public string FGCode
    {
        get { return _fgCode; }
        set { _fgCode = value; }
    }
    public int CodeState
    {
        get { return _codeState; }
        set { _codeState = value; }
    }
    public Int16 PalletSet
    {
        get { return _palletSet; }
        set { _palletSet = value; }
    }
    public bool Priority
    {
        get { return _priority; }
        set { _priority = value; }
    }
    public string FormingCode
    {
        get { return _formingCode; }
        set { _formingCode = value; }
    }
    public string D4Code
    {
        get { return _d4Code; }
        set { _d4Code = value; }
    }

}

1 个答案:

答案 0 :(得分:0)

我认为以下内容应该有效:

if (gdvFGCode.DataSource != null)
{
    List<CodeEntity> codes = (List<CodeEntity>)gdvFGCode.DataSource;
}

修改

添加null检查数据源和更新的代码,以准确反映OP的代码。