读取ViewBag匿名类

  • 关于遍历 viewBag匿名类错误

EF tt生成的类

明明有值眼睁睁看着 却不认识

1 public ActionResult Index()
2 {
3
4     MyTestEntities1 db = new MyTestEntities1();
5
6     var source = from c in db.Student select new { c.DocId, c.StuAge, c.StuName };
7     ViewBag.source = source;
8     return View();
9 }

解决方法:

1:建立匿名类的实体类进行转换,

2:使用Tuple 按照数组方式进行读取

 1 public ActionResult Index()
 2 {
 3
 4     MyTestEntities1 db = new MyTestEntities1();
 5
 6     //var source = from c in db.Student select new { c.DocId, c.StuAge, c.StuName };
 7     //var source = from c in db.Student.ToList() select Tuple.Create(c.DocId, c.StuAge, c.StuName); //new {c.DocId,c.StuAge,c.StuName };
 8     var source = db.Student.ToList().Select(s => Tuple.Create(s.DocId, s.StuAge, s.StuName));
 9     ViewBag.source = source;
10     return View();
11 }
 1 <table>
 2     @foreach (var item in ViewBag.source)
 3     {
 4         <tr>
 5             <td>@item.Item1</td>
 6             <td>@item.Item2</td>
 7             <td>@item.Item3/td>
 8         </tr>
 9     }
10 </table>
11
12  
 1 //
 2 // 摘要:
 3 //     创建新的 3 元组,即三元组。
 4 //
 5 // 参数:
 6 //   item1:
 7 //     此元组的第一个分量的值。
 8 //
 9 //   item2:
10 //     此元组的第二个分量的值。
11 //
12 //   item3:
13 //     此元组的第三个分量的值。
14 //
15 // 类型参数:
16 //   T1:
17 //     此元组的第一个分量的类型。
18 //
19 //   T2:
20 //     元组的第二个分量的类型。
21 //
22 //   T3:
23 //     元组的第三个分量的类型。
24 //
25 // 返回结果:
26 //     值为 (item1, item2, item3) 的 3 元组。
27 public static Tuple<T1, T2, T3> Create<T1, T2, T3>(T1 item1, T2 item2, T3 item3); 

 多谢辉同学帮助
时间: 2024-08-21 17:32:03

读取ViewBag匿名类的相关文章

MVC匿名类传值学习

刚接触MVC+EF框架不久,但一直很困惑的就是控制器能否及如何向视图传递匿名类数据.宝宝表示很讨厌去新建实体类啦,查询稍有不同就去建一个实体类不是很麻烦吗,故趁阳光正好,周末睡到自然醒后起来尝试了之前一直在博客园看到的实现方式:英明神武的Tuple类,第一次对微软钦佩之至.故做如下记录,方便自己之后使用.大神就勿喷我啦,宝宝第一次写博客. 首先先描述一下我要实现的功能:从控制器后台查询一些数据,通过匿名类存储,在视图前端遍历输出.初衷实现流程如下: 控制器部分: 1 2 3 4 5 6 7 8

HttpCookie加匿名类实现多语言

突然想做一个多语言网站,确不知道怎么实现好,突然想到了HttpCookie,然后页面后台用匿名类实现语言的储存. string lan = Request["str_lan"]; ViewBag.lan = lan; HttpCookie hc = new HttpCookie("language"); hc.Value = lan; hc.Expires = DateTime.Now.AddDays(1); Response.Cookies.Add(hc); Ht

[转]c#匿名类

首先让我们看一个例子, 假设我们并没有Person类, 并且我们关心的属性只有Name和Age. 下面的代码演示了我们如何在没有声明类型的情况下来构建一个对象的: 1: var tom = new { Name = Tom, Age = 4 };   2: var holly = new { Name = Holly, Age = 31 };   3: var jon = new { Name = Jon, Age = 31 };   4: Console.WriteLine({0} is {1

内部类与匿名类(转)

Java 中的内部类和匿名类* 为什么需要内部类? Java 内部类有什么好处?为什么需要内部类? 首先举一个简单的例子,如果你想实现一个接口,但是这个接口中的一个方法和你构想的这个类中的一个方法的名称,参数相同,你应该怎么办?这时候,你可以建一个内部类实现这个接口.由于内部类对外部类的所有内容都是可访问的,所以这样做可以完成所有你直接实现这个接口的功能. 不过你可能要质疑,更改一下方法的不就行了吗? 的确,以此作为设计内部类的理由,实在没有说服力.真正的原因是这样的,java 中的内部类和接口

Java中的内部类、匿名类的使用

代码(test.java): 1 interface ie{ 2 public void print(); 3 } 4 5 class outer{} 6 7 public class test{ 8 public class inner{} 9 public void test(ie e){ 10 e.print(); 11 } 12 public static void main(String[] args){ 13 14 15 new test().test(new ie(){ 16 pu

解决内存泄漏更加清楚的认识到Java匿名类与外部类的关系

1.事件起因 在做项目的时候,通过Android Studio的Memory Monitor窗口观察程序内存使用情况,发现当程序退出的时候,有一部分应该释放掉的内存没有释放掉,知道程序中应该有内存泄漏了.为了发现程序中的内存泄漏,我切换了IDE工具到Eclipse,里面安装了内存泄漏的分析工具MAT,具体怎么用MAT分析内存泄漏可以自己Google,我把我自己找到内存泄漏的地方贴出来 从上图中可以看到,有24M左右的内存被mView(其实它真正是一个Fragment)这个变量持有,导致Java垃

Java匿名类

public class Person { public void hello() { System.out.println("我是Person"); } } 1 public class Main 2 { 3 /** 4 * 主函数,程序的入口 5 * @param args 6 */ 7 public static void main(String[] args) 8 { 9 final int num=90;//局部变量 10 11 //匿名类 12 Person p1=new

JAVA学习--匿名类的使用

1 public class TestProduct { 2 public static void main(String[] args) { 3 TestProduct t = new TestProduct(); 4 //方式一:创建一个实现Product接口的类的对象,并将此对象传入方法中 5 NoteBook n = new NoteBook(); 6 t.show(n); 7 //方式二:创建一个实现Product接口的匿名类的对象 8 Product p = new Product(

java匿名类和匿名对象及this的其他用法

/* 匿名内部类:就是内部类的简写格式. 必须前提:内部类必须继承或者实现一个类或者接口. 匿名内部类其实就是一个匿名 子类对象. 格式:new 父类对象 or 接口(){ 子类内容:(覆盖父类的, 而且可以增加自己的方法) }//相当于将 继承父类 和 new 的过程 写到了一起有某有!很方便有某有! */ class Outer{ int num; public Outer(){ num = 5; } class Inner{ int num; public Inner(){ num = 1