我有一个简单的类,包括两个属性,一个是字符串类型,另一个是泛型对象列表。它看起来像这样:
public class SessionFieldViewModel
{
private String _name;
public String Name
{
get { return _name; }
set { _name = value; }
}
private List<Object> _value;
public List<Object> Value
{
get { return _value ?? new List<Object>(); }
set { _value = value; }
}
}
在我的主要代码(MVC控制器)中,我试图手动填充这个类。请注意,当我使用默认模型绑定程序将数据从Web表单传递到此类时,它会被正确地填充。
当尝试手动创建记录并将其添加到列表中时,我会这样做:
Guid id = Guid.NewGuid();
var _searchField = new SessionFieldViewModel();
_searchField.Name = "IDGUID";
Object _object = (Object)id;
_searchField.Value.Add(_object);
_searchFields.Fields.Add(_searchField);
当我这样做时,我会得到一个填充了"IDGUID"名称属性的类,但对象的通用列表返回为空。
当我调试代码并按步骤执行时,数据似乎都在那里并且正常工作,但是当我经过并检查_searchFields时,它不显示任何字段值。
有什么想法吗?
谢谢。
汤姆(tlatourelle)
List<object>
?当你不知道编译时的类型时,为什么要使用泛型?看起来有点无用。 - Darin Dimitrov