我使用从MVC项目生成的以下内容(在方法ActionResult索引中), 现在我想将以下var属性(config)转换为模型类,该类是从(config类)生成的DB中的类,我该怎么做?
var config = from m in db.Config
select m;
我尝试这样但是它不起作用
Config config2 = (Config)config;
还有
Config config = from m in db.Config
select m;
错误是:
Error 1 Cannot implicitly convert type 'System.Linq.IQueryable<Admin.Config.Admin>' to 'AdminS.Config.Admin'. An explicit conversion exists (are you missing a cast?)
答案 0 :(得分:6)
var config = from m in db.Config
select m;
返回IQueryable<Admin.Config.Admin>
而不是Admin类。你有效地拥有一个集合,你可以使用.FirstOrDefault()
来返回第一个对象(或null)。
Config config2;
Config firstConfigItem = config.FirstOrDefault();
if (firstConfigItem != null) {
config2 = firstConfigItem;
}
注意:您不需要从Config
转换为Config
因为没有意义,您已经在处理正确的类型。编译器最初抱怨IQueryable<Config>
到Config
。
要获取可以调用.ToList()
的对象列表,您必须迭代集合中的每个对象并相应地分配它,目前您只有1个变量。