0

我是 MVC 框架的新手。我的查询是我必须从数据库 sql
数据库接收数据。并显示在 .cshtml .plz 帮助中......

  public ActionResult Index()
    {
        var model = (from p in am.AMS_Page_Accesses
                     where p.Role_id == "m"
                     select new {
                      p.Name,
                      p.Id,
                      p.Link
                      }).ToList();
        var  abc= new linkname
          {    

          }  

       return View(abc);
    }

模型

public class linktab
    {            
        public  string id { get; set; }
        public  string Name { get; set; }
        public string link { get; set; }    
    }
    public class linkname
    {
        public List<linktab> menu { get; set; }
    }

在 .cshtml 中

 @foreach (var a in Model)
    {
     <div>a.Name</div>
     <div>a.Id</div>
     <div>a.Link</div>
    }
4

2 回答 2

0

您没有显示您的视图模型到底是什么,根据您收到的错误,您似乎根本没有指定它(使用@model指令)。

试试这个

public ActionResult Index()
{
    var model = (from p in am.AMS_Page_Accesses
                 where p.Role_id == "m"
                 select new linktab
                 {
                     Id = p.Id,
                     Link = p.Link,
                     Name = p.Name
                 }).ToList();

    var abc = new linkname
    {
        menu = model
    }  

    return View(abc);
}

在您看来:

@model linkname


@foreach (var a in Model.menu)
{
   <div>a.Name</div>
   <div>a.Id</div>
   <div>a.Link</div>
}
于 2012-08-09T18:40:05.167 回答
0

您正在发送一个空集合更改您的操作,如下所示,

我假设您认为它被强输入到链接选项卡列表中

public ActionResult Index()
{
    var model = (from p in am.AMS_Page_Accesses
                 where p.Role_id == "m"
                 select new linktab{
                  Name = p.Name,
                  id = p.Id,
                  link = p.Link
                  }).ToList();

   return View(model);
}

如果不是这种情况,并且您的模型是类链接名的强类型,您应该像这样执行您的操作

public ActionResult Index()
{
    var model = (from p in am.AMS_Page_Accesses
                 where p.Role_id == "m"
                 select new linktab{
                  Name = p.Name,
                  id = p.Id,
                  link = p.Link
                  }).ToList();
    linkname abc= new linkname
    {    
       menu = model
    }  
   return View(abc);
}

您可以更改视图中的代码,如下所示

@foreach (var a in Model.menu)
{
    <div>a.Name</div>
    <div>a.Id</div>
    <div>a.Link</div>
} 
于 2012-08-09T18:40:38.950 回答