zoukankan      html  css  js  c++  java
  • EF中連表查詢的應用方式

    1.首先我們想讓列表頁顯示兩個表的共同數據

    這裡有兩張表

       public class mytype
        {
            public int mytypeID { get; set; }
            public string mytypeName { get; set; }
        }

      public class Author
        {
            public int AuthorID { get; set; }
            public string AuthorName { get; set; }
        }

    2.然後新建立一個新的文件夾,然後添加一個類

      public class all
        {
            public int id { get; set; }

            public string type { get; set; }

            public string other { get; set; }

        }

    3.  public class mytryController : Controller
        {
            //
            // GET: /mytry/
            AllContext db = new AllContext();

            public ActionResult Index() //在這裡我們獲取到了類all中的數據
            {
                var a = from i in db.Mytype
                        from j in db.Author
                        where i.mytypeID == j.AuthorID
                        select new all{ id=i.mytypeID, type=i.mytypeName, other=j.AuthorName };
                return View(a);
            }
        }

    4.然後再對應的視圖頁面

    @model IEnumerable<MvcApplication12.viewModel.all>

    然後再下面下出,這樣你所需要的數據就出來了

      @foreach (var item in Model)
        {
         @item.id
         @item.type
         @item.other
         }

    現在還有一個類似的方法

    首先添加一個all類

    namespace MvcApplication12.viewModel
    {
        public class all
        {
            public IEnumerable<Author> author { get; set; }
            public IEnumerable<mytype> mytype { get; set; }
        }
    }

    在控制器中

       public class mytryController : Controller
        {
            //
            // GET: /mytry/
            AllContext db = new AllContext();
            viewModel.all al = new viewModel.all();
            
            public ActionResult Index() //在這裡我們獲取到了類all中的數據
            {
                var a = from i in db.Mytype
                        from j in db.Author
                        where i.mytypeID == j.AuthorID
                        select new myClass{Id=i.mytypeID,Type=i.mytypeName,Name=j.AuthorName};

             
                return View(a);
            }
        }

        public class myClass
        {
            public int Id { get; set; }
            public string Type { get; set; }
            public string Name { get; set; }
        }

    然後在視圖頁面

    @model IEnumerable<MvcApplication12.Controllers.myClass>

        @foreach (var item in Model)
        {
        @item.Id
        @item.Name
        @item.Type
         }

    這樣也是可以的。

    ok

  • 相关阅读:
    NOTIFYICONDATA结构
    OA系统权限管理设计(转载)
    JQuery打造下拉框联动效果
    MapReduce实现矩阵相乘
    Linux系统下安装phpmyadmin方法
    个人封装的一个Camera类
    从零开始学C++之STL(七):剩下5种算法代码分析与使用示例(remove 、rotate 、sort、lower_bound、accumulate)
    Java实现 蓝桥杯VIP 算法提高 3-1课后习题2
    Java实现 蓝桥杯VIP 算法提高 3-1课后习题2
    Java实现 蓝桥杯VIP 算法提高 3-1课后习题2
  • 原文地址:https://www.cnblogs.com/sdya/p/3973246.html
Copyright © 2011-2022 走看看