3

EF Code First を使用すると、VS 2012 の WCF RIA サービス ウィザード (新しい DomainService を追加するときに実行される) が、プロジェクトで定義された DbContexts を認識しないようです (ObjectContext のみを認識します)。

これは、VS2012 で新しい項目を追加し、[DomainServiceClass の追加] を選択すると、ウィザードが利用可能なコンテキスト クラスを検出できないことを意味します * コンボ リストが空です *

添付画像をご覧ください

ここで何が起こっているのでしょうか?ありがとう -サミット添付画像をご覧ください

4

3 に答える 3

3

これは、Visual Studio 2012、WCF RIA Services、および Entity Framework の既知の問題であり、ウィザードが DbContext タイプを認識しない新しいドメイン サービスを作成する原因となります。

簡単な解決策は、引き続き Visual Studio 2010 を使用してエンティティ モデルを作成することです。RIAServices.EntityFramework NuGet パッケージを使用しても機能しませんが、現在のバージョンの Entity Framework をサポートしていないためです。

別の解決策は、 Context のタイプを から に変更するDbContextことObjectContextです。

その特定のシナリオに関する KB 記事もあります。

更新: EF 5 と DbContext の使用をサポートするために、WCF Ria サービスの更新がリリースされました。詳細については、こちらをご覧ください

于 2012-10-22T09:43:54.900 に答える
0

WCF ria が EF 5 よりも古いため、ウィザードがクラスを見つけられないと思います。アセンブリ バインディングを次の場所にリダイレクトしてみてください。

<runtime>
    <legacyUnhandledExceptionPolicy enabled="1" />
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="EntityFramework" publicKeyToken="b77a5c561934e089" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
      </dependentAssembly>
...

それが機能するかどうかをお知らせください

于 2012-10-12T07:14:04.287 に答える
0

これは、WCF RIA サービスの 4.2 リリースで可能になりました。

WCF RIA プロジェクトを作成し、Windows Phone のバージョンを選択するように求められた場合、これは報告された問題であり、Windows Phone 8.0 & 7.1 SDK を削除する必要があります。

その後、プロジェクト テンプレートに関するエラーが発生した場合は、既にインストールされているはずの WCF RIA 1.0 SP2 で修復を実行します。

于 2013-03-12T12:28:33.090 に答える