EF生成“不支持指定方法".SqlQuery中的错误

编程入门 行业动态 更新时间:2024-10-14 12:21:26
本文介绍了EF生成“不支持指定方法".SqlQuery中的错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我当前正在使用Entity Framework 5我尝试编写以下代码:

I am currently using Entity Framework 5 I've tried to code the following:

var result = context.Database.SqlQuery<Entity>("SELECT * FROM ref.Entity");

但是出现以下错误:

Specified method is not supported.

任何人都可以给我看解决这个问题的方法吗?

Can anyone show me a resolution to this issue?

堆栈跟踪

在EFProviderWrapperToolkit.DbConnectionWrapper.CreateDbCommand()\ r \ n在System.Data.Common.DbConnection.CreateCommand()\ r \ n在System.Data.Objects.ObjectContext.CreateStoreCommand(String commandText,Object []参数)\ r \ n在System.Data.Objects.ObjectContext.ExecuteStoreQueryInternal [TElement](字符串commandText,字符串entitySetName,MergeOption mergeOption,Object []参数)\ r \ n在System.Data.Objects.ObjectContext.ExecuteStoreQuery [TElement](位于System.Data.Entity.Internal.InternalContext.ExecuteSqlQuery [TElement]中的(字符串commandText,Object []参数)\ r \ n,位于System.Data.Entity.Internal处的字符串sql,Object []参数)\ r \ n.InternalContext.ExecuteSqlQueryAsIEnumerable [TElement](字符串sql,Object []参数)\ r \ n在System.Data.Entity.Internal.InternalContext.ExecuteSqlQuery(类型elementType,字符串sql,Object []参数)\ r \ n在系统.Data.Entity.Internal.InternalSqlNonSetQuery.GetEnumerator()\ r \ n位于System.Data.Entity.Internal.InternalSqlQuery 1.GetEnumerator()\ r \ n位于System.Linq.SystemCore_EnumerableDebugView 1.get_Items()"

"at EFProviderWrapperToolkit.DbConnectionWrapper.CreateDbCommand()\r\n at System.Data.Common.DbConnection.CreateCommand()\r\n at System.Data.Objects.ObjectContext.CreateStoreCommand(String commandText, Object[] parameters)\r\n at System.Data.Objects.ObjectContext.ExecuteStoreQueryInternal[TElement](String commandText, String entitySetName, MergeOption mergeOption, Object[] parameters)\r\n at System.Data.Objects.ObjectContext.ExecuteStoreQuery[TElement](String commandText, Object[] parameters)\r\n at System.Data.Entity.Internal.InternalContext.ExecuteSqlQuery[TElement](String sql, Object[] parameters)\r\n at System.Data.Entity.Internal.InternalContext.ExecuteSqlQueryAsIEnumerable[TElement](String sql, Object[] parameters)\r\n at System.Data.Entity.Internal.InternalContext.ExecuteSqlQuery(Type elementType, String sql, Object[] parameters)\r\n at System.Data.Entity.Internal.InternalSqlNonSetQuery.GetEnumerator()\r\n at System.Data.Entity.Internal.InternalSqlQuery1.GetEnumerator()\r\n at System.Linq.SystemCore_EnumerableDebugView1.get_Items()"

推荐答案

答案很简单.我不确定您是否拥有EFProviderWrapperToolkit的源代码,是否应该获取它并对其进行了研究.您会注意到,从DbConnection继承的DbConnectionWrapper覆盖了CreateDbCommand方法,但没有为其提供任何功能,而是引发了异常.

The answer is quite simple. I am not sure if you have the source code of EFProviderWrapperToolkit, you should get it and have a look at it. You will notice that DbConnectionWrapper, which inherits from DbConnection it overrides CreateDbCommand method but does not provide any functionality for it, instead it throws and exception.

/// <summary> /// Creates and returns a <see cref="T:System.Data.Common.DbCommand"/> object associated with the current connection. /// </summary> /// <returns> /// A <see cref="T:System.Data.Common.DbCommand"/> object. /// </returns> protected override DbCommand CreateDbCommand() { throw new NotSupportedException(); }

更多推荐

EF生成“不支持指定方法".SqlQuery中的错误

本文发布于:2023-06-11 00:13:52,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/622018.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:不支持   错误   方法   EF   SqlQuery

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!