asp.net – LINQ:不支持查询运算符’ElementAtOrDefault’
发布时间:2020-11-14 15:44:54 所属栏目: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.
|
为什么以下代码会产生错误?
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-mvc – 使用NLog记录未处理的异常? ELMAH和NLog应
- 利用ASP.NET MVC和Bootstrap快速搭建个人博客之后台dataTab
- 在ASP.Net中防止SQL注入
- asp.net – Silverlight初始化错误2110 Internet Explorer
- asp.net – 动态创建和共享Google云端硬盘文件夹
- 使用SharpZipLib压缩打包多个内存中的文件
- asp.net-mvc-3 – 用于ASP的Telerik扩展. NET MVC免费?
- asp.net-mvc – 为一个MVC视图使用两个强类型模型
- asp.net – 转发器控件中的单选按钮列表
- asp.net-mvc-4 – 如何开发一个ASP.NET Web API接受一个复杂
推荐文章
站长推荐
- asp.net-mvc – ASP.NET MVC会话超时,绝对还是滑
- asp.net – NHibernate – ManagedWebSessionCon
- [你必须知道的.NET] 开篇有益
- asp.net-mvc – 具有ASP.NET MVC的多语言网站
- asp.net – 来自.Net iSeries Provider的AS 400性
- WPF中ComboBox绑定数据库自动读取产生数据
- asp.net – 如何从复选框列表中获取最新的选定值
- 使用Asp.net Web API时,使用DataContract和DataM
- asp.net – 绑定ListView InsertItemTemplate中的
- asp.net-mvc – 从控制器重定向初始化不工作
热点阅读
