欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

asp.net mvc 三层加EF两表联查

程序员文章站 2022-08-31 12:33:09
首先打开vs软件新建项目创建web中的mvc项目再右击解决方案创建类库项目分别创建DAL层和BLL层再把DAL层和BLL层的类重命名在mvc项目中的Models文件夹创建model类在DAL创建ADO.NET实体数据模型后把DAL层中App.Config文件中的链接字符串复制到mvc项目的Web.c ......

首先打开vs软件
新建项目
创建web中的mvc项目
再右击解决方案创建类库项目
分别创建dal层和bll层再把dal层和bll层的类重命名
在mvc项目中的models文件夹创建model类
在dal创建ado.net实体数据模型后把dal层中app.config文件中的链接字符串复制到mvc项目的web.config文件中
dal层中的类开始打代码

 /// <summary>
        /// 两表联查
        /// </summary>
        /// <returns></returns>
        public static list<dynamic> biao()
        {
            using (kaoshientities db = new kaoshientities())
            {
                var sql = from s in db.student
                          join c in db.bang on s.id equals c.bid
                          select new
                          {
                              s.name,
                              s.passwork,
                              c.bname
                          };
                list<dynamic> li = new list<dynamic>();
                foreach (var item in sql.tolist())
                {
                    dynamic d = new expandoobject();
                    d.name = item.name;
                    d.pwd = item.passwork;
                    d.bname = item.bname;
                    li.add(d);
                }
                return li;
            }
        }

bll层

 /// <summary>
        /// 两表联查
        /// </summary>
        /// <returns></returns>
        public static list<dynamic> biao()
        {
            try
            {
                return kaoshidal.kaoshidal.biao();
            }
            catch (exception ex)
            {
                
                throw ex;
            }
        }

mvc项目中的models文件夹的model类

 /// <summary>
        /// 两表联查
        /// </summary>
        /// <returns></returns>
        public static list<dynamic> biao()
        {
            try
            {
                return kaoshibll.kaoshibll.biao();
            }
            catch (exception ex)
            {

                throw ex;
            }
        }

在mvc项目中的controllers文件夹创建home控制器

 /// <summary>
        /// 两表联查
        /// </summary>
        /// <returns></returns>
        public actionresult index()
        {
            list<dynamic> li =kaoshimodel.biao();
            return view(li);
        }

index视图

@{
    viewbag.title = "index";
}

<h2>index</h2>
<table style="width: 40%;" border="1">
    <tr>
        <th>姓名</th>
        <th>密码</th>
        <th>班级</th>
    </tr>
    @foreach (var item in model)
    {
    <tr>
        <td>@item.name</td>
        <td>@item.pwd</td>
        <td>@item.bname</td>
    </tr>
      }
</table>