Ⅰ→通过ViewData传递数据,不过需要新建一个类(用来存)

NewClass(里面有表1的字段和表2的字段)

    public class JoinTab1_2
{
public int ID { get; set; }
public string Name { get; set; }
}

控制器中Action

        public ActionResult Index()
{using (DBEntities db = new DBEntities())
{
var query = (from tab_1 in db.T_Tab1
join tab_2 in db.T_Tab2 on T_Tab1.TypeID equals T_Tab2.ID
select new JoinTab1_2()
{
ID = tab_1.ID,
Name = tab_2.Name
}).ToList();
ViewData["query"] = query;
return View();
}
}

View中(可以直接在控制器中的Action直接右击→添加视图...然后类型选新建的这个,其它自定义吧)

<div class="table-responsive">
<table class="table" border="">
<caption>测试</caption>
<thead>
<tr>
<td>
ID
</td>
<td>
类型名称
</td>
<td>
操作
</td>
</tr>
</thead>
<tbody>@foreach (var item in ViewData["query"] as IEnumerable<JoinInstrument>)
{
<tr>
<td>
@item.ID
</td>
<td>
@item.Name
</td>
<td>
<a class="btn" title="编辑" href="@Url.Action("GetInfo",new { id=@item.ID})">查看</a>
<a class="btn" title="编辑" href="@Url.Action("Edit",new { id=@item.ID})">修改</a>
<a class="btn" title="编辑" href="@Url.Action("Delete",new { id=@item.ID})">删除</a>
</td>
</tr>
}
</tbody>
@*<tfoot> </tfoot>*@
</table>
</div>

Ⅱ→通过return View(query);传递数据→会报错!!!

控制器中Action

        public ActionResult Index()
{
using (DBEntities db = new DBEntities())
{
var query = (from tab_1 in db.T_Tab1
join tab_2 in db.T_Tab2 on T_Tab1.TypeID equals T_Tab2.ID
select new JoinTab1_2()
{
ID = tab_1.ID,
Name = tab_2.Name
}).ToList();
//ViewData["query"] = query;
return View(query);
}
}

view中

<div class="table-responsive">
<table class="table" border="">
<caption>测试</caption>
<thead>
<tr>
<td>
ID
</td>
<td>
类型名称
</td>
<td>
操作
</td>
</tr>
</thead>
<tbody>@foreach (var item in Model)
{
<tr>
<td>
@item.ID
</td>
<td>
@item.Name
</td>
<td>
<a class="btn" title="编辑" href="@Url.Action("GetInfo",new { id=@item.ID})">查看</a>
<a class="btn" title="编辑" href="@Url.Action("Edit",new { id=@item.ID})">修改</a>
<a class="btn" title="编辑" href="@Url.Action("Delete",new { id=@item.ID})">删除</a>
</td>
</tr>
}
</tbody>
@*<tfoot> </tfoot>*@
</table>
</div>

这样写会报错

我参考这篇文章也没搞出来

记dynamic的一个小坑 -- RuntimeBinderException:“object”未包含“xxx”的定义

大神看到希望能指点一二...

x

x

Linq多表联合查询,在View中绑定数据的更多相关文章

  1. 你了解MySQL中的多表联合查询吗?

    前言: 多表联合查询,其实就是我们MySQL中的join语句,经常会看到有人说join非常影响性能,不建议使用,你知道这是为什么呢?我们究竟可不可以用呢? 测试数据: CREATE TABLE `t2 ...

  2. Linq和EF 做 单一条件查询 和 复合条件 查询 以及 多表 联合查询 示例

    单一条件查询: var table2Object = (from t1 in db.table1 join t2 in db.table2 on t1.id equals t2.id select t ...

  3. 七十七、SAP中数据库操作之多表联合查询

    一.我们看一下SFLIGHT表和SPFLI表,表结构如下 二.这2个表的数据如下 三.我们代码如下 四.多表联合查询结果如下

  4. MVC5+EF6简单实例---以原有SQLServer数据库两表联合查询为例

    有二三年没写代码了,**内的工作就是这样,容易废人!看到园子里这么多大侠朝气蓬勃的,我想也要学点东西并和大家分享,共同进步!快乐每一天,进步每一天!言归正传! 通过最近一段时间对MVC5.EF6的学习 ...

  5. yii 多表联合查询的几种方法

    yii多表联合查询, 第一种,用command,自己拼接sql语句执行查询 第二种,用AR,model需继承下面的ar,执行queryall或queryrow方法 <?php //applica ...

  6. Dynamic CRM 2013学习笔记(九)CrmFetchKit.js介绍:Fetchxml、多表联合查询, 批量更新

    CrmFetchKit.js是一个跨浏览器的一个类库,允许通过JavaScript来执行fetch xml的查询,还可以实现批量更新,分页查询等.目前已支持Chrome 25, Firefox 19 ...

  7. SharePoint 2013 列表多表联合查询

    在SharePoint的企业应用中,遇到复杂的逻辑的时候,我们会需要多表查询:SharePoint和Sql数据表一样,也支持多表联合查询,但是不像Sql语句那样简单,需要使用SPQuery的Joins ...

  8. MyBatis 多表联合查询及优化 以及自定义返回结果集

    下面就来说一下 mybatis 是通过什么来实现多表联合查询的.首先看一下表关系,如图: 这 里,我已经搭好了开发的环境,用到的是 SpringMVC + Spring + MyBatis,当然,为了 ...

  9. 一步步学Mybatis-实现多表联合查询(4)

    上一章节中我们已经完成了对单表的CRUD操作,接下来今天这一讲讲述的是关于Mybatis在多表查询时候的应用,毕竟实际业务中也是多表的联合查询比较多嘛~ 还记得最一开始我们新建过一张Website表吗 ...

随机推荐

  1. python3用BeautifulSoup抓取a标签

    # -*- coding:utf-8 -*- #python 2.7 #XiaoDeng #http://tieba.baidu.com/p/2460150866 from bs4 import Be ...

  2. linux下使用mingw编译NSIS-3.03

    简述 最近在研究使用NSIS做安装包,语法不算复杂,插件也很多,中文资料也不少,还挺好用的.先后用NSIS做出了安装和卸载需要输入密码,通过自定义页面实现安装时候选择多个目录.安装的时候输入配置文件信 ...

  3. Jexus 网站服务器和 ASP.NET 跨平台开发

    微软的跨平台战略 微软在过去的一年多中时间中发生了令整个 IT 行业感到惊叹的变化.这一切始于 Ballmer 的退位和 Nadella 的决心,更始于早已在微软各个基层部门蠢蠢欲动的二次创业. 以开 ...

  4. 解决 Firefox 下载文件名乱码扩展 ReDisposition

    作者 muzuiget  发布 2013-03-13 19:23  标签 redisposition Firefox 下载文件名乱码问题由来已久,偶然一两次还可以手动改名,批量下载时简直要亲命,最终我 ...

  5. 苹果产品时间发布表统计(iPhone、iPad),以及32位和64位机的说明

    之前因为某些原因,需要对apple家族的手机和pad产品做一个上市时间排序,以及分析分别是哪种CPU机型 总结如下: iPad家族: 1.iPad   - 2010.1.27发布 2.iPad 2   ...

  6. (转)超过 130 个你需要了解的 vim 命令

    从 1970 年开始,vi 和 vim 就成为了程序员最喜爱的文本编辑器之一.5 年前,我写了一个问自己名为 “每个程序员都应该知道的 100 个 vim 命令” 这次算是之前那篇文章的改进版,希望你 ...

  7. 第一部分:开发前的准备-第三章 Application 基本原理

    第3章 应用程序基本原理 首先我们需要强调一下Android 应用程序是用java写的.Android SDK工具编译代码并把资源文件和数据打包成一个文件.这个名字的扩展名是.APK.要在androi ...

  8. maven dependencies

    http://maven.apache.org/guides/getting-started/index.html https://maven.apache.org/guides/introducti ...

  9. sublime text 3 环境变量的配置、安装Package Control、汉化和注册

    1.在运行里输入sysdm.cpl打开环境变量设置界面,输入sublime的安装目录,分号和之前的隔开 2.下载好Package Control,解压重命名为package control 下载地址: ...

  10. Vue+element组合el-table-column表头宽度自定义

    [本文出自天外归云的博客园] 需求 1. 某列表头文字内容过长,要对每列表头自定义宽度 2. 表格row的每一column文字不换行,超过列宽则省略,mouseover有提示 3. 对于label做滤 ...