为了账号安全,请及时绑定邮箱和手机立即绑定

如何在剃刀视图中使用我的数据库视图?

如何在剃刀视图中使用我的数据库视图?

C#
慕码人8056858 2021-10-24 20:03:46
我有以下代码,但我无法自动填充选择的选项:控制器.cspublic ActionResult GetPais()        {                using (MyEntities ctx = new MyEntities())            {                var List = ctx.Countries.ToList();                return PartialView("_optionsPais", List);            }        }模型国家列表.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.csnamespace 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@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>}我只想迭代我的 SQL 表的所有行:我找不到迭代表行的方法,他们可以帮助我。或者找到另一种类型的路径,比如在视图中直接使用 LINQ,谢谢
查看完整描述

1 回答

?
慕田峪7331174

TA贡献1828条经验 获得超13个赞

尝试访问Razor 视图中对象的Countries属性时,您应该会收到错误消息List<Countries>。


相反,在控制器操作中实例化视图模型并将其传递给,PartialView()因为您的 Razor 视图将其模型定义为MySite.Models.CountrisList.


public ActionResult GetPais()

{    

    using (MyEntities ctx = new MyEntities())

    {

        var model = new MySite.Models.CountrisList();

        model.Countries = ctx.Countries.ToList();

        return PartialView("_optionsPais", model);

    }

}


查看完整回答
反对 回复 2021-10-24
  • 1 回答
  • 0 关注
  • 150 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信