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
EF中連表查詢的應用方式的更多相关文章
- EF中多表公共字段,以及设置EntityBase使所有实体类继承自定义类
使用EF框架访问数据库时,如果某些表具有公共字段,例如在审核流程中,对于各类申请单资料的创建人.创建时间.修改人.修改时间,这些可能多表都需要的字段,如果在每个实体中进行赋值操作显然是类似和重复的,下 ...
- Action 中获取表单数据的三种方式
(尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/53138905 冷血之心的博客) Action 中获取表单提交数据 ...
- EF中新建表和关联表的方法
以机场表为例 private static AIRPORT_HELIPORTManager AirportHeliportManager => ManagerFactory.Instance.A ...
- Day20-单表中获取表单数据的3种方式
1. 搭建环境请参考:http://www.cnblogs.com/momo8238/p/7508677.html 2. 创建表结构 models.py from django.db import m ...
- 如何查詢 SQL Server 資料庫中欄位值為 NULL 的資料(转)
最近使用mssql的时候对于未null的字段查询不到 http://blogs.msdn.com/b/jchiou/archive/2008/05/01/sql-server-null.aspx 先建 ...
- easyui datagrid 禁止选中行 EF的增删改查(转载) C# 获取用户IP地址(转载) MVC EF 执行SQL语句(转载) 在EF中执行SQL语句(转载) EF中使用SQL语句或存储过程 .net MVC使用Session验证用户登录 PowerDesigner 参照完整性约束(转载)
easyui datagrid 禁止选中行 没有找到可以直接禁止的属性,但是找到两个间接禁止的方式. 方式一: //onClickRow: function (rowIndex, rowData) ...
- EF 操作数据库中的表
1.VS创建项目(实现数据库的增删改查.并在dataGridView中展示) 增.改通过Button,删通过快捷菜单ContextMenuStrip控件(DateGridView控件的ContextM ...
- DB表的关系及EF中Fluent API的使用
现在使用多数的数据库是关系型数据库,那么表与表之间的关系就会显得尤其重要,对于数据的CRUD处理和以后数据的分析有很大的好处.下面是对于数据库中对表关系的理解以及在EF中使用Fluent API来创建 ...
- oracle 查詢表字段明細、字段注釋、表註釋
查詢表字段明細 select column_name,data_type,data_length,DATA_PRECISION ,DATA_SCALE from all_tab_columns wh ...
随机推荐
- [编程] C语言循环结构计算π的值
公式: 分析:首先,系数为正数的项的分母是4n-3(n为正数项的项数),为负数的项的分母为4n-1(n为负数项的项数),即分母的变化规律是1.3.5.7...的奇数数列,则第n项的分母为2n-1,第1 ...
- 利用QVOD架设流媒体服务器/电影服务器/vod服务器
电影服务器一点也不稀罕,是的我们见的太多了,但是大家有没有想过自己也能架一个这样的服务器? 当然现在架一个电影服务器不切实际,去年吵的闹哄哄的“视听许可证”想必大家有所耳闻,再加上电影对服务器的要求一 ...
- docker 安装ElasticSearch 6.x
首先是拉去镜像(或者直接创建容器自然会拉去) docker pull elasticsearch:6.5.4 创建容器 docker run --name elasticsearch --net ho ...
- Git和Github快速入门
一.什么是Git? 假设你在的公司要上线一个新功能,你们开发团队为实现这个新功能,写了大约5000行代码,上线没2天,就发现这个功能用户并不喜欢,你老板让你去掉这个功能,你怎么办?你说简单,直接把50 ...
- Python之装饰器复习
一.什么是装饰器? 装饰器他人的器具,本身可以是任意可调用对象,被装饰者也可以是任意可调用对象. 二.强调装饰器的原则: 1 不修改被装饰对象的源代码 2 不修改被装饰对象的调用方式 3:在遵循1和2 ...
- JavaScript函数与面向对象
一.JS面向对象 function Func(name,age){ //this = obj this.Name = name; this.Age = age; } obj = new Func('r ...
- MySQL数据库(6)----配置文件 my.cnf 的使用
1. 使用源码安装好MySQL后,其配置文件一般位于 /usr/local/my.cnf,可以使用如下命令查看查看配置文件的搜索顺序: root@javis:~$ mysqld --help --ve ...
- this keyword details
学生类: package com.itheima_07; /* * 学生类 * * 起名字我们要求做到见名知意. * 而我们现在的代码中的n和a就没有做到见名知意,所以我要改进. * * 如果有局部变 ...
- RAP, 高效前后端联调框架,接口文档管理工具
RAP通过GUI工具帮助WEB工程师更高效的管理接口文档,同时通过分析接口结构自动生成Mock数据.校验真实接口的正确性,使接口文档成为开发流程中的强依赖.有了结构化的API数据,RAP可以做的更多, ...
- 学习笔记:Nginx反射代理使用缓存和删除其缓存文件的方法
使用nginx做cache服务器 需求就是缓存android的软件包,后缀名是apk.话不多说,直接上配置,供参考: a-->nginx.conf user www www; worker_pr ...