当前位置:编程学习 > C#/ASP.NET >>

MVC3 查询返回指定字段如何写?

请教一个问题:根据一个用户的编号,通过用户表User关联部门表Dept取用户编号和部门名称返回UserView

class UserView 
{
userid,deptname 有两个成员 用户编号 和部门名称
}


代码:
       public UserView GetModuleDetail(int id)
        {
            var query = from a in db.User
                                         join b in db.Dept
                                         on a.deptid equals b.deptid
                                         where a.userid == id
                             select new  { userid = a.userid, deptname = b.deptname };

            return ????;
           
        }
请问下  return 那边我该如何写?  --------------------编程问答--------------------
 public ActionResult GetModuleDetail(int id)
        {
 var json = new JsonResult();
            var query = from a in db.User
                                         join b in db.Dept
                                         on a.deptid equals b.deptid
                                         where a.userid == id
                             select new  { userid = a.userid, deptname = b.deptname };
json.Data = new { iserror = false, Query = query };
            return json;
           
        }


 getAjax(url, str, function (json) {
                if (!json.iserror) {
                    alert(json.Query);
                } else
                  {}
            });
--------------------编程问答-------------------- 如果表是有主外关联的话 但会消耗点内存http://www.cnblogs.com/wlflovenet/archive/2011/07/29/efandmvc6.html

你直接返回User
然后
User.Dept.Deptname 

如果你一定要自定义类
return new UserView(){userid=query.userid ;deptname=deptname };//这是新的语法 可能不用() --------------------编程问答-------------------- 你查询的数据可以放到list里 然后返回list的形式 在前台foreach遍历就行 --------------------编程问答-------------------- 必须定义一个这样的类才可以。 --------------------编程问答-------------------- 当然你也可以返回object类型,程序中用dynamic获取。
比如
object foo()
{
    return new { id = 1, name = "a" };
}
main()
{
    dynamic d = foo();
    Console.WriteLine(d.id);
}
但是要注意,匿名类型是只读的。
这么写不可以
dynamic d = foo();
d.id = 2; // error
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,