[英]How can I use a view of my database in a razor view?
I have the following code but I can not auto-fill the options of a select: 我有以下代码,但无法自动填写选择的选项:
controller.cs controller.cs
public ActionResult GetPais()
{
using (MyEntities ctx = new MyEntities())
{
var List = ctx.Countries.ToList();
return PartialView("_optionsPais", List);
}
}
modelCountriesList.cs modelCountriesList.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace MySite.Models
{
public class CountrisList
{
public IEnumerable<Countries> Countries { get; set; }
}
}
MySite.Context.cs MySite.Context.cs
namespace MySite.Models
{
using System;
using System.Data.Entity;
using System.Data.Entity.Infrastructure;
public partial class MyEntities : DbContext
{
public MyEntities()
: base("name=MyEntities")
{
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
throw new UnintentionalCodeFirstException();
}
...
public DbSet<Countries> Countries { get; set; }
...
}
}
_optionPais.cshtml _optionPais.cshtml
@model MySite.Models.CountrisList
@using System.Web.Configuration;
@using System.Globalization;
@using System.Linq;
@foreach (var item in Model.Countries)
{
<option value="@item.Ide">@item.Descripcion</option>
}
I just want to iterate all the rows of my SQL table: 我只想迭代SQL表的所有行:
I could not find the way to iterate the rows of my table, they could help me. 我找不到迭代表中行的方法,它们可以为我提供帮助。
or Find another type of path like using LINQ directly in the view, thanks 或查找其他类型的路径,例如直接在视图中使用LINQ,谢谢
You should be getting an error while trying access the Countries
property of a List<Countries>
object in your Razor view. 你应该试图访问会得到一个错误
Countries
一个财产List<Countries>
对象在Razor视图。
Instead, instantiate the view model in the controller action and pass it to PartialView()
since your Razor view defines its model as MySite.Models.CountrisList
. 相反,由于您的Razor视图将其模型定义为
MySite.Models.CountrisList
,因此在控制器操作中实例化视图模型并将其传递给PartialView()
。
public ActionResult GetPais()
{
using (MyEntities ctx = new MyEntities())
{
var model = new MySite.Models.CountrisList();
model.Countries = ctx.Countries.ToList();
return PartialView("_optionsPais", model);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.