Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/302.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# ASP.NET Core 3.0错误';无法强制转换类型为';在搭建现有数据库的同时_C#_Sql_Entity Framework Core_Asp.net Core 3.0_Entity Framework Core 3.0 - Fatal编程技术网

C# ASP.NET Core 3.0错误';无法强制转换类型为';在搭建现有数据库的同时

C# ASP.NET Core 3.0错误';无法强制转换类型为';在搭建现有数据库的同时,c#,sql,entity-framework-core,asp.net-core-3.0,entity-framework-core-3.0,C#,Sql,Entity Framework Core,Asp.net Core 3.0,Entity Framework Core 3.0,我正在使用VisualStudio2019。我的应用程序是ASP.NETCore3.0 我正在尝试使用Package Manager控制台通过以下命令从LocalDb构建现有数据库: Scaffold-DbContext "Server=(localdb)\mssqllocaldb; Database=hamdoonsoft;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Appco

我正在使用VisualStudio2019。我的应用程序是ASP.NETCore3.0

我正在尝试使用Package Manager控制台通过以下命令从LocalDb构建现有数据库:

 Scaffold-DbContext "Server=(localdb)\mssqllocaldb;
 Database=hamdoonsoft;Trusted_Connection=True;" 
 Microsoft.EntityFrameworkCore.SqlServer -OutputDir Appcontext
过了一段时间,我发现了这个错误:

无法将类型为“Microsoft.EntityFrameworkCore.Diagnostics.RelationalLoggingDefinitions”的对象强制转换为类型为“Microsoft.EntityFrameworkCore.SqlServer.Diagnostics.Internal.SqlServerLoggingDefinitions”

是什么导致了它,我如何解决它?

这是中的一个已知问题,该问题将在预览5中修复。我自己也遇到过这个问题,我可以确认更新到Preview 5,这使得我对EFCore的.csproj引用看起来像这样:

<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="3.0.0-preview5.19227.1" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="3.0.0-preview5.19227.1" />


已解决此问题,并允许我构建DBContext。

我怀疑您更新了Visual Studio。c#应用程序和数据库之间存在不一致的映射文件。实体创建一组用作映射一部分的类。当数据库更改或SQL Server或Net版本时,映射也需要更新。要从“工具>获取工具和功能”安装一些工具,我强制更新了“Visual Studio安装程序”。现在,解决方案是什么?为什么要在代码中做一些只需要每5年做一次的事情?在需要时手动执行有什么问题?您是否先介绍代码?如果数据库更新需要30秒才能运行,您是否希望在每次启动应用程序时进行检查?我现在必须做什么;复制此代码并替换.csproj?@MuhammadAshikuzzaman中的现有代码,您需要通过编辑项目文件更新Microsoft.EntityFrameworkCore.*的包引用,使用包管理器控制台或NuGet包管理器-如何操作取决于您=)我默认这两个如何更新到更新到预览5?有可能是努吉吗?Nuget表示Microsoft不同库的最新版本。EntityFrameworkCore.*是2.什么。这是因为您没有告诉它使用预发布包,请参阅此处以了解更多信息: