asp.net – LINQ:不支持查询运算符’ElementAtOrDefault’
发布时间:2020-12-15 20:36:56 所属栏目:asp.Net 来源:网络整理
导读:为什么以下代码会产生错误? The query operator ‘ElementAtOrDefault’ is not supported Dim Im = (From view In Db.Views Where _ view.Pass = txtCode.Text _ Select New With {.Id = view.UniqueID.ToString}_ ).DistinctResponse.Redirect("~/test.as
为什么以下代码会产生错误?
Dim Im = (From view In Db.Views Where _ view.Pass = txtCode.Text _ Select New With {.Id = view.UniqueID.ToString}_ ).Distinct Response.Redirect("~/test.aspx?x=" & Im(0).Id) 有没有办法在不使用FirstOrDefault选项的情况下修复它? 更新:这是StackTrace at System.Data.Linq.SqlClient.QueryConverter.VisitSequenceOperatorCall(MethodCallExpression mc) at System.Data.Linq.SqlClient.QueryConverter.VisitMethodCall(MethodCallExpression mc) at System.Data.Linq.SqlClient.QueryConverter.VisitInner(Expression node) at System.Data.Linq.SqlClient.QueryConverter.ConvertOuter(Expression node) at System.Data.Linq.SqlClient.SqlProvider.BuildQuery(Expression query,SqlNodeAnnotations annotations) at System.Data.Linq.SqlClient.SqlProvider.System.Data.Linq.Provider.IProvider.Execute(Expression query) at System.Data.Linq.DataQuery`1.System.Linq.IQueryProvider.Execute[S](Expression expression) at System.Linq.Queryable.ElementAtOrDefault[TSource](IQueryable`1 source,Int32 index) at Login.btnLogin_Click(Object sender,EventArgs e) in D:ProjectsMemoriaLogin.aspx.vb:line 14 at System.Web.UI.WebControls.Button.OnClick(EventArgs e) at System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) at System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) at System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl,String eventArgument) at System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint,Boolean includeStagesAfterAsyncPoint) 解决方法
您需要做的是将.ToList()添加到查询的末尾.这应该工作:
Dim Im = (From view In Db.Views Where _ view.Pass = txtCode.Text _ Select New With {.Id = view.UniqueID.ToString}_ ).Distinct.ToList() Response.Redirect("~/test.aspx?x=" & Im(0).Id) 如果没有.ToList(),查询只返回一个DataQuery(Of T)而不是List(Of T).添加ToList调用有两个作用: >强制查询立即执行,和 希望有所帮助! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – 循环访问复选框列表
- 为什么我的iSeries / ASP.NET MVC 4应用程序中没有重复使用
- ASP.NET捆绑和缩小 – CSS3属性失败
- asp.net-mvc-4 – Resharper无法解析主页中的部分视图
- .net – asp:GridView文本框始终返回空值
- asp.net-mvc – 为什么人们在MVC中使用Web API控制器
- .net – 传递的主键值的数量必须与实体上定义的主键值的数量
- asp.net-mvc – 在ASP.NET MVC中使用线程设置当前文化
- asp.net-mvc-3 – SQL Server 2008连接字符串,用于实体框架
- asp.net-mvc-5.1 – 如何在EnumDropDownListFor中设置所选值
推荐文章
站长推荐
- Asp.Net – 什么是<%$?
- asp.net-mvc-3 – 没有使用asp mvc 3,nhibernate
- asp.net-mvc – ASP.NET MVC路由问题
- asp.net-mvc-4 – 如何使用ASP.NET MVC在Kendo U
- Windbg程序调试系列4-Live Debugging
- iis – “立即启动应用程序池”和“启动模式Alwa
- 如何在页面视图或按钮单击之间增加ASP.NET(C#)中
- asp.net-mvc – 如何构建一个企业MVC应用程序,业
- asp.net-mvc – asp mvc使用View Model在视图中列
- SCRIPT87:IE 9中无效的参数,ASP.NET C#
热点阅读