几个月来,我对删除数据库并重新创建数据库来生成模型没有任何疑问。从git中拉出后,尝试进行相同的过程时发生了问题。第二步(使用DB创建连接字符串)后,在第三步不再进行任何操作,也没有在app.config文件中创建与数据库的连接字符串。我尝试使用数据库凭据和我得到以下内容。
当我尝试更新模型图中的特定表作为替代时,我也会得到以下信息:
System.Data.Entity.Core.EntityException:发生错误时 关闭提供者连接。有关详细信息,请参见内部异常。 ---> System.IO.FileNotFoundException:无法加载文件或程序集'System.Memory,版本= 4.0.1.0,区域性=中性, PublicKeyToken = cc7b13ffcd2ddd51”或其依赖项之一。
我已经重新安装了Entity Framework和npgsql软件包,并尝试添加所有(相同)程序集,但是没有成功。 Stack上的类似答案无法解决我的问题。 (我可以使用当前版本,而无需在VS或其任何软件包中进行进一步的更新。)
!通知:当我将API调用与当前模型一起使用时(与数据库进行适当的通信),我从服务中获取了所有适当的数据,但是无法从DB生成新模型。 / p>
任何解决方案?
我正在使用
Asp.net
提前谢谢!
答案 0 :(得分:1)
实际上,这个答案来自于一位大四学生,而他只是帮助解决了这个问题!他说,由于解决方案保留了旧文件->此错误,您可以尝试打开解决方案的每个项目,然后删除文件夹'bin'和'obj'->重新构建!您可以尝试的一个选择!
答案 1 :(得分:1)
我正在使用的控制台应用程序遇到类似的问题。昨晚一切正常。今天,我收到错误消息“无法加载文件或程序集'System.Memory,版本= 4.0.1.0 ...”。在进入Visual Studio解决方案的配置管理器并将活动解决方案平台从“任何CPU”更改为“ x64”之前,我无法解决此问题。重建后,我的程序现在可以正常工作了,不再抛出异常。
答案 2 :(得分:0)
通过Google的快速搜索,我发现:https://github.com/GrillPhil/ServerlessRealtimeDemo/issues/1
我不知道这是否已经过时,但是您是否尝试将目标版本设置为Windows 10,版本1803(10.0;内部版本17134)和最低版本? 项目属性中的Windows 10 Fall Creators Update(10.0;内部版本16299)?
答案 3 :(得分:0)
使用IL Disassembler(ildasm.exe)检查输出目录中的版本是否与错误消息中的版本匹配。
我们的软件经常会遇到这类问题,因为不同的nuget软件包需要使用不同的版本,并且讨厌的库中不包含nuget。
构建过程未考虑对同一库的不同版本的需求。
如果版本不匹配确实是造成问题的原因,则您可能正在app.config中寻找绑定重定向,以将该库的所有较旧版本转发到最新版本。
需要将类似的内容添加到相关库的<dependentAssembly>
节点中:
<bindingRedirect oldVersion="0.0.0.0-4.2.0.0" newVersion="4.2.0.0" />
ildasm通常可以在这里找到(取决于您的Visual Studio版本)
C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v8.1A \ bin \ NETFX 4.5.1 Tools \ ildasm.exe
答案 4 :(得分:0)
确定解决!
由于某些原因,具体的nugget软件包未正确安装,并且由于将备份文件弄乱了,因此我无法选择将其与旧文件进行比较。我再次克隆了存储库(即使我不得不放弃一些进展也是如此) )。 步骤:
通过掘金包管理器下载,我遇到了.Net版本问题 所以我不得不手动做。
我已经从以下位置下载了.nupkg文件 https://www.nuget.org/packages/System.Memory/
使用在以下位置找到的批处理文件提取dll。 https://gist.github.com/fex80/976ff887acb825171de6
已复制到适当项目的bin文件夹中。
重建项目,终于成功了。
非常感谢您的贡献!
答案 5 :(得分:0)
如果此错误出现在 IIS 应用程序(例如 ASP.NET)中,则很有可能您在 web.config 中缺少绑定重定向。
当您从 Nuget 安装时,您应该会在 web.config 中看到一个绑定重定向。
如果您将应用程序部署到另一台机器,但未能在该辅助机器上设置绑定重定向,则可能会出现此错误。
<dependentAssembly>
<assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.1.1" newVersion="4.0.1.1" />
</dependentAssembly>