无法将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