不存在从对象类型 System.Data.Objects.ObjectParameter 到已知的托管提供程序本机类型的映射

在使用EF的时候  试着直接使用T-SQL

有这样的实现ObjectContext.ExecuteStoreQuery

其中有个构造函数ObjectContext.ExecuteStoreQuery(string s,parm object[] p)

网上全是这种写法

se.ExecuteStoreQuery<Departments>("SELECT dId, dName, dManager FROM Departments where [email protected]", new ObjectParameter("id", "1")

我不知道别人是否运行过  或者运行是不是正确 反正我遇到异常了

修改后

se.ExecuteStoreQuery<Departments>("SELECT dId, dName, dManager FROM Departments where did={0}","1")

运行通过 数据正确

原因:parm部分需要如下这种方式构造

context.ExecuteStoreQuery<Product>("select * from Products where pid = {0}", 1);

or

context.ExecuteStoreQuery<Product>("select * from Products where pid = @p0", new SqlParameter { ParameterName = "p0", Value = 1 });

时间: 2024-10-19 21:59:23

不存在从对象类型 System.Data.Objects.ObjectParameter 到已知的托管提供程序本机类型的映射的相关文章

在vs2010使用EF出现CS0012: 类型“System.Data.Objects.DataClasses.EntityObject”在未被引用的程序集中定义

网上查了一通都是在web.config中配置 System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089” 无效 解决方案到  C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0 目录拷贝一份System.Data.Entity.dll 到网站bin 目录就好了 编译错误

类型“System.Data.Objects.DataClasses.EntityObject”在未被引用的程序集中定义。

说明: 在编译向该请求提供服务所需资源的过程中出现错误.请检查下列特定错误详细信息并适当地修改源代码. 编译器错误消息: CS0012: 类型“System.Data.Objects.DataClasses.EntityObject”在未被引用的程序集中定义.必须添加对程序集“System.Data.Entity, Version=4.0.0.0, Culture=neutral,  PublicKeyToken=b77a5c561934e089”的引用. 出现这个错误的原因是Web.confi

使用EF6.0出现:CS0029 无法将类型“System.Data.Entity.Core.Objects.ObjectContext”隐式转换为“System.Data.Objects.ObjectContext”错误

这是因为EF6.0重构了一些命名空间后,和VS原有的实体数据模型模板不一致了(ObjectContext context = ((IObjectContextAdapter)dataContext).ObjectContext;),只要把命名空间改一下就可以了,如下: 把using System.Data.Objects;改成using System.Data.Entity.Core.Objects;即可.

EF生成 类型“System.Data.Entity.DbContext”在未被引用的程序集中定义

错误描述: 1 类型“System.Data.Entity.DbContext”在未被引用的程序集中定义.必须添加对程序集“EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”的引用. D:\HF_Source\webapitest\test2\DFSoft.Plat.SQLServerDAL\BaseService\B_AgreementTypeDAL.cs 30 13 DFSof

报错:无法将类型&quot;System.Data.EntityState&quot;隐式转换为&quot;System.Data.Entity.EntityState&quot;

报错:无法将类型"System.Data.EntityState"隐式转换为"System.Data.Entity.EntityState" 原因一: using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Data.Entity; 是否引用了System.Data.Entity   是则:db.Ent

无法为具有固定名称“System.Data.SqlClient”的 ADO.NET 提供程序加载在应用程序配置文件中注册的实体框架提供程序类型“System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer”。请确保使用限定程序集的名称且该程序集对运行的应用程序可用。有关详细信息,请参阅 http://go.m

Windows服务中程序发布之后会如下错误: 无法为具有固定名称"System.Data.SqlClient"的 ADO.NET 提供程序加载在应用程序配置文件中注册的实体框架提供程序类型"System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer".请确保使用限定程序集的名称且该程序集对运行的应用程序可用.有关详细信息,请参阅 http://go.microsoft.com

SQLite 解决:Could not load file or assembly &#39;System.Data.SQLite ... 试图加载格式不正确的程序(转)

错误提示如下: Could not load file or assembly 'System.Data.SQLite,Version=1.0.66.0,Culture=neutral,PublicKeyToken=db937bc2d44ff139' or one of its dependencies. 试图加载格式不正确的程序 原因: System.Data.SQLite分X64和X86版本. 一般来说,在64位系统上就应该使用X64版本的,但是这样一来开发工作似乎就繁琐了许多 如果不区分,

类型“System.Data.Linq.DataContext”在未被引用的程序集中定义。必须添加对程序集“System.Data.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”的引用。

解决方法:添加System.Data.Linq.dll引用 http://www.cnblogs.com/m84641693/archive/2010/07/26/1785100.html http://www.myexception.cn/c-sharp/1406525.html

从具体化“System.Data.Objects.MaterializedDataRecord”类型到“XXXX”类型的指定强制转换无效。

在EF里面使用CreateQueryl的时候出现异常 这是原来有问题的代码 se.CreateQuery<Departments>("SELECT Departments.dId, Departments.dName, Departments.dManager FROM Departments") .ToList().ForEach(w => { System.Console.WriteLine(w.dId + " " + w.dName + &q