无法将System.Data.Entity.Core.Objects.ObjectResult类型隐式转换为System.Data.Objects.ObjectResult
我正在尝试更新EDMX存储过程,我收到此错误:
无法将System.Data.Entity.Core.Objects.ObjectResult
类型隐式转换为System.Data.Objects.ObjectResult
我正在使用Visual Studio 2012。
我有错误,这些解决方案都没有工作(我已经在使用System.Data.Entity.Core.Objects
,它也在context.tt
等)。
我终于意识到键盘和椅子之间存在问题。 存储过程完成了选择,但我正在尝试:
MyStoredProc_Result r = dbcontext.MyStoredPoc();
代替
MyStoredProc_Result r = dbcontext.MyStoredPoc().FirstOrDefault();
以XML模式打开context.tt
文件并进行更改
using System.Data.Objects;
至
using System.Data.Entity.Core.Objects;
使用VS 2013或下载适用于Visual Studio 2012的新Entity Framework 6工具 。
您只需将“使用System.Data.Objects”更改为“using System.Data.Entity.Core.Objects”
您需要升级到新的Entity Framework 6运行时。
右键单击您的项目并选择Manage NuGet Packages...
在Online
选项卡下选择EntityFramework
并单击Install
注意:如果Install
了以前版本的EntityFramework NuGet包,则会将其升级到EF6。 或者,您可以从程序包管理器控制台运行以下命令:
PM> Install-Package EntityFramework
参考: http : //msdn.microsoft.com/en-US/data/upgradeEF6