无法将System.Data.Entity.Core.Objects.ObjectResult类型隐式转换为System.Data.Objects.ObjectResult

时间:2014-07-16 16:38:02

标签: c# entity-framework

我正在尝试更新EDMX存储过程,我收到此错误:

无法隐式将System.Data.Entity.Core.Objects.ObjectResult<X>类型转换为System.Data.Objects.ObjectResult<X>

我正在使用Visual Studio 2012。

5 个答案:

答案 0 :(得分:18)

我遇到了错误,这些解决方案都没有用(我已经使用System.Data.Entity.Core.Objects,它也在context.tt等)。

我终于意识到问题出在键盘和椅子之间。存储过程完成了选择,但我正在尝试:

MyStoredProc_Result r = dbcontext.MyStoredPoc();

而不是

MyStoredProc_Result r = dbcontext.MyStoredPoc().FirstOrDefault();

答案 1 :(得分:9)

以XML模式打开context.tt文件 并改变

using System.Data.Objects;

using System.Data.Entity.Core.Objects;

答案 2 :(得分:0)

您需要升级到新的Entity Framework 6运行时。

右键点击您的项目,然后选择Manage NuGet Packages...Online标签下选择EntityFramework,然后点击Install 注意:如果安装了以前版本的EntityFramework NuGet包,则会将其升级到EF6。 或者,您可以从程序包管理器控制台运行以下命令:

PM> Install-Package EntityFramework

参考:http://msdn.microsoft.com/en-US/data/upgradeEF6

答案 3 :(得分:0)

使用VS 2013或下载新的Entity Framework 6 Tools for Visual Studio 2012

答案 4 :(得分:0)

您只需将“使用System.Data.Objects”更改为“using System.Data.Entity.Core.Objects”