私はEntity FrameworkとCompact DBを使用するASP.NET MVC Webアプリケーションを持っています - "db.sdf"または "db.mdf"ファイル。Azure 1時間Webアプリケーションtry - SQL Compact db
localhostで動作します。
しかし、私はAzureに1時間試しWebアプリケーションとして公開したいと思います。
私はこのエラーを得た:
The Entity Framework provider type 'System.Data.Entity.SqlServerCompact.SqlCeProviderServices, EntityFramework.SqlServerCompact' registered in the application config file for the ADO.NET provider with invariant name 'System.Data.SqlServerCe.4.0' could not be loaded. Make sure that the assembly-qualified name is used and that the assembly is available to the running application.
何が起こっていますか?私はパッケージインストールされている:
EF.SqlServer
EF.SqlServerCompact
System.Data.SqlServerCe
をそしてweb.configファイルに見えます:
<configSections>
<section name="entityFramework"
type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection,
EntityFramework, Version=6.0.0.0, Culture=neutral,
PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</configSections>
<connectionStrings>
<add name="DefaultConnection" connectionString="Data
Source=|DataDirectory|db.sdf"
providerName="System.Data.SqlServerCe.4.0" />
</connectionStrings>
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlCeConnectionFactory, EntityFramework">
<parameters>
<parameter value="System.Data.SqlServerCe.4.0" />
</parameters>
</defaultConnectionFactory>
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
<provider invariantName="System.Data.SqlServerCe.4.0" type="System.Data.Entity.SqlServerCompact.SqlCeProviderServices, EntityFramework.SqlServerCompact" />
</providers>
</entityFramework>
<system.data>
<DbProviderFactories>
<remove invariant="System.Data.SqlServerCe.4.0" />
<add name="Microsoft SQL Server Compact Data Provider 4.0"
invariant="System.Data.SqlServerCe.4.0"
description=".NET Framework Data Provider for Microsoft SQL Server Compact"
type="System.Data.SqlServerCe.SqlCeProviderFactory,
System.Data.SqlServerCe, Version=4.0.0.0, Culture=neutral,
PublicKeyToken=89845dcd8080cc91" />
</DbProviderFactories>
</system.data>
"*しかし、私はAzureに1時間試しWebアプリとして公開したい*" - これが何を意味するのかわからない。 –
ファイルを "ローカルにコピー"する必要があります。これを行うには、参照を開き、SqlServerCe.4.0をクリックし、プロパティウィンドウで[ローカルにコピー]を選択します。これは、ファイルがデプロイメントパッケージの一部であることを確認します。 –