asp.net-mvc – LINQ到EF有什么问题?
发布时间:2020-12-16 04:03:18 所属栏目:asp.Net 来源:网络整理
导读:我正在使用EF.这是我的LINQ查询 public ListTupleint,string GetList() { return (from c in DALContext.MST select new Tupleint,string(c.CD,c.NAME)).ToList(); } 当我调用GetList()时,它会抛出异常:LINQ to Entities中仅支持无参数构造函数和初始值设定
我正在使用EF.这是我的LINQ查询
public List<Tuple<int,string>> GetList() { return (from c in DALContext.MST select new Tuple<int,string>(c.CD,c.NAME)).ToList(); } 当我调用GetList()时,它会抛出异常:LINQ to Entities中仅支持无参数构造函数和初始值设定项 相反,当我重写此查询时: List<Tuple<int,string>> lst = new List<Tuple<int,string>>(); var query= (from c in DALContext.MST select new{c.CD,c.NAME}); foreach (var item in query) { lst.Add(new Tuple<int,string>(item.CD,item.NAME)); } return lst; 它运作正常.我的第一个查询怎么了? 解决方法
其他答案对于正在发生的事情是正确的,但我没有看到有人提到使代码工作的最佳方法:AsEnumerable()
public List<Tuple<int,string>> GetList() { return (from c in DALContext.MST.AsEnumerable() select Tuple.Create(c.CD,c.NAME)).ToList(); } AsEnumerable方法充当应该转换为SQL并在数据库服务器中执行的代码之间的边界,以及在我们从数据库获得响应之后应该在内存中执行的代码.在表名称之后将其放在正确的位置告诉EF从MST表中获取所有记录,然后运行以下代码,从返回的值创建元组. 我改变了你的新元组< int,string>进入Tuple.Create主要是因为我不喜欢输入泛型类型参数. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – Azure App Service Web App编译错误
- asp.net-mvc – 在IIS Express中测试SignalR应用程序
- asp.net-web-api – Windows.Web.Http.HttpClient WEB API
- asp.net-mvc-4 – 通过ADAL JavaScript Ajax和KnockoutJs的
- .net – FileLoadException:无法加载文件或程序集System.R
- ASP.NET MVC应用程序安全性
- asp.net-mvc-3 – ASP.NET MVC DropDownListFor从模型中选择
- asp.net – Page.RouteData.Values对于一个页面是空的而不是
- 在ASP.Net Web应用程序中运行后台任务并获得反馈的最佳方法
- asp.net – 创建一个包含两列值的VB.NET数组?
推荐文章
站长推荐
- asp.net-mvc-3 – asp.net mvc 3和elmah.axd –
- .net – 绕过获取请求的MVC验证
- asp.net-mvc – NHibernate – 懒惰地初始化一个
- asp.net-mvc – ASP.NET MVC中的Razor页面生命周
- asp.net mvc 三元运算符改变样式
- .net – 类库项目中特定于语言的资源文件的问题
- .net – ActionFilterAttribute不重定向
- 如何实现ASP.NET 2.0,Coldfusion 5和Classic ASP
- 如何使用WebAPI没有ASP.NET MVC?
- asp.net-mvc – 如何在ASP.NET MVC上为GET和POST
热点阅读