Сборки не найдены - PullRequest
       51

Сборки не найдены

0 голосов
/ 25 января 2019

Тип поставщика Entity Framework 'Npgsql.NpgsqlServices, Npgsql.EntityFramework6.Npgsql', зарегистрированный в файле конфигурации приложения для поставщика ADO.NET с инвариантным именем Npgsql, не может быть загружен. Убедитесь, что используется полное имя сборки и что сборка доступна для работающего приложения. См. http://go.microsoft.com/fwlink/?LinkId=260882 для получения дополнительной информации

Использование Microsoft Visual Studio 2017 Community Edition

Использование Entity Framework 6.2 (устанавливается через Nuget)

Использование Npgsql 4.0.4 (устанавливается через Nuget)

Использование VSIX для npsql, установленного через Microsoft Marketplace

Попытка кода сначала EF6 / postgres. Примерно попробовал каждую комбинацию app.config, которую я видел примеры на различных должностях. Я явно что-то упускаю. Пожалуйста, помогите.

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
  </configSections>
     <system.data>
 <system.data>
  <DbProviderFactories>
      <remove invariant="Npgsql"/>
    <add name="Npgsql Data Provider" invariant="Npgsql" description=".Net Data Provider for PostgreSQL" type="Npgsql.NpgsqlFactory, Npgsql, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7"/>
  </DbProviderFactories>
</system.data>  </system.data>

  <connectionStrings>
    <add name="CricketConnection" connectionString="server=localhost;Database=CricketGrounds;Username=postgres;Password=postgres"
      providerName="Npgsql" />
  </connectionStrings>
  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
  </startup>
  <entityFramework>
     <providers>
      <provider invariantName="Npgsql" type="Npgsql.NpgsqlServices, Npgsql.EntityFramework6.Npgsql" />
    </providers>
 </entityFramework>

</configuration>

1 Ответ

0 голосов
/ 25 января 2019

Я получил это, потому что я не установил EntityFramework6.Npgsql, который (помимо прочего) добавляет вещи в App.Config

 <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="Npgsql" publicKeyToken="5d8b90d52f46fda7" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-4.0.4.0" newVersion="4.0.4.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>

У меня все еще есть проблемы, но теперь с System.Data.SqlClient.SqlClientFactory, но если я не смогу решить это, я отправлю другой вопрос.

...