BlogEngine.NET&SQL CE 4.0ではまったのでメモ

このサイトの構築ではまったのでメモ

このブログはBlog Engine.NETを使っています。
データはSQL CE4.0に保存するように、setup/SQL_CE/ReadMe.txtに書かれたように

  1. '%ProgramFiles(x86)%\Microsoft SQL Server CompactEdition\v4.0\Private'からDLLを/binにコピー
  2. SQL_CE_for_ASP.NET_4.0_Web.ConfigをWeb.configとしてコピー
  3. BlogEngine.sdfをApp_Dataフォルダにコピー

と手順を踏んだのですが、WebMatrixでは動作したのに、ホスティング先のExpressWebでは動作せず…。

エラーの原因を調べた結果、binフォルダに配置したSQL CE 4.0のDLL(System.Data.SqlServerCe.dll)が
読み込めていないようだったので、以下の設定をWeb.Configに入れたところ動作するようになりました。

 <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
        <dependentAssembly>
            <assemblyIdentity name="System.Data.SqlServerCe" publicKeyToken="89845dcd8080cc91" />
            <bindingRedirect oldVersion="4.0.0.0" newVersion="4.0.0.1" />
        </dependentAssembly>
   </assemblyBinding>
</runtime>

GACに入った別のSystem.Data.SqlServerCe.dllを見てるのかもしれません。

これでブログが動くようになったので、Windows Phone 7のことを書いていきます。

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.