![](/img/trans.png)
[英]How can i create a Partial View for MVC4 or MVC 5 using Entity Framework (.edmx Model) with Razor Views?
[英]Create a Dynamic List using Entity Framework in MVC Razor
我想使用存储过程和实体框架使用车辆制造商来填充列表,但是当出现以下错误时:
传递到词典中的模型项的类型为'System.Collections.Generic.List 1[System.String]', but this dictionary requires a model item of type 'System.Collections.Generic.IEnumerable
1 [VehicleInfo.Models.tblVehicle ]”。
模型
public partial class tblVehicle
{
public string BrandName{ get; set; }
}
调节器
public ActionResult Index()
{
VehicleDBContext db = new VehicleDBContext();
var brandnames = db.prcGetMakes().ToList();
return View(brandnames);
}
视图
@model IEnumerable<VehicleInfo.Models.tblVehicle>
<ul id="Makes">
@foreach (var item in Model)
{
<li>@item.BrandName.Distinct()</li>
}
</ul>
储存程序
CREATE PROCEDURE [dbo].[prcGetMakes]
AS
BEGIN
SET NOCOUNT ON;
SELECT DISTINCT
UPPER(BrandName) BrandName
FROM
tblVehicle
ORDER BY
BrandName
END
肯定有一些我很想念的东西,但是我似乎无法解决。
请帮忙!
从错误消息中,您的action方法中的表达式db.prcGetMakes().ToList()
看起来返回了一个字符串列表,并将其传递给视图。 但是,您的视图被强类型tblVehicle
对象的列表,因此会收到有关类型不匹配的错误消息。
解决方案是使两种类型匹配。 您可以将视图更新为string
类型的强类型列表
@model IEnumerable<string>
<ul id="Makes">
@foreach (var item in Model)
{
<li>@item</li>
}
</ul>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.