zoukankan      html  css  js  c++  java
  • EF+postgresql中的一些问题

    需要基于MVC的WebAPI搭建一个服务接口,数据存储在postgresql数据库,在使用的过程中遇到了很多问题。做一下记录:

    (1) System.IO.FileLoadException: 未能加载文件或程序集“Npgsql, Version=3.1.2.0, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配。 (异常来自 HRESULT:0x80131040)

        项目采用codefirst的方式,但是在搭建项目的时候,总是遇到这个错。

    我的步骤如下

      1、安装entityframework6 

           打开 Package Manage Console,输入命令 Install-Package EntityFramework;

      2、安装npgsql 的entityframework支持

        命令  Install-Package EntityFramework6.Npgsql

      3、安装 npgsql

           命令   Install-Package Npgsql

      配置文件代码示例 

    复制代码
      <entityFramework>
        <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
        <providers>
          <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
          <provider invariantName="Npgsql" type="Npgsql.NpgsqlServices, EntityFramework6.Npgsql" />
        </providers>
      </entityFramework>
      <system.data>
        <DbProviderFactories>
          <remove invariant="Npgsql"></remove>
          <add name="Npgsql Data Provider" invariant="Npgsql" description=".Net Framework Data Provider for Postgresql Server" type="Npgsql.NpgsqlFactory, Npgsql" />
        </DbProviderFactories>
      </system.data>
      <connectionStrings>
        <add name="TestDbContext" connectionString="Server=localhost;Database=test; User Id=dba;Password=12345678;" providerName="Npgsql" />
      </connectionStrings>
    复制代码

      但不知道为什么,还是会报错!

      后来,我下是不是包的安装顺序搞错了!!就把上面的2和3换了一下!成功!!!

      哎,也是醉了!这个小问题,都纠缠了这么久!写代码需要更加小心啊!

  • 相关阅读:
    眼过千遍不如手过一遍!
    等老了,做一个视频编辑
    不建议用wxWidgets,底层有过多的bug
    MFC新婚之夜(笑昏,大概是指MFC的人固步自封)
    Twitter算法
    Ruby on rails3
    重提基数排序
    Hashtable Dictionary List
    try { var mergeFilePath = string.Format("{0}mergepdf.pdf", tempDownDir); PDFPrintHelper.MergePDFFile(pdfList, mergeFi
    查找树
  • 原文地址:https://www.cnblogs.com/cemaster/p/5940706.html
Copyright © 2011-2022 走看看