Asp.net mvc 3 为什么我会得到;无法将lambda表达式转换为类型';字符串';因为它不是委托类型;?
我有一个名为LookupTable的简单表,其中有两个字段:Id(int)和Description(nvarchar),我想用它们来填充下拉列表 以下代码给出了错误信息:Asp.net mvc 3 为什么我会得到;无法将lambda表达式转换为类型';字符串';因为它不是委托类型;?,asp.net-mvc-3,linq-to-entities,Asp.net Mvc 3,Linq To Entities,我有一个名为LookupTable的简单表,其中有两个字段:Id(int)和Description(nvarchar),我想用它们来填充下拉列表 以下代码给出了错误信息: IEnumerable<SelectListItem> items = _entities.LookupTable.Select(t=> new SelectListItem {Value = t.Id,
IEnumerable<SelectListItem> items =
_entities.LookupTable.Select(t=> new SelectListItem {Value = t.Id,
Text = t.Description } );
IEnumerable项=
_entities.LookupTable.Select(t=>newselectListItem{Value=t.Id,
Text=t.Description});
我有一个使用系统;语句,如果尝试t.Id.ToString(),则会出现运行时错误
我一定错过了一些简单的东西,对吧?从你的问题中不清楚
\u实体的类型。LookupTable
。如果我们假设它是一些IQueryable
或IEnumerable
,其中SomeModel
包含两个属性Id
和Description
,您必须确保正确地将这两个值转换为字符串,因为SelectListItem
的值和文本
属性都是字符串
您还可以通过调用.ToString()
,尝试急切地执行查询:
var项目=\u实体
.好看
托利斯先生()
.选择(t=>new SelectListItem
{
Value=t.Id.ToString(),//您的问题不清楚\u实体的类型。LookupTable
。如果我们假设它是一些IQueryable
或IEnumerable
,其中SomeModel
包含两个属性Id
和Description
,您必须确保将这两个值正确地转换为字符串作为选择列表项的值
和文本
属性都是字符串
您还可以通过调用.ToString()
,尝试急切地执行查询:
var项目=\u实体
.好看
托利斯先生()
.选择(t=>new SelectListItem
{
Value=t.Id.ToString()//
var items = _entities
.LookupTable
.ToList()
.Select(t => new SelectListItem
{
Value = t.Id.ToString(), // <-- notice that you might need a ToString if the Id property is integer
Text = t.Description
});