1

vs2010内に新しいドメインサービスクラスを追加したい。[新しいドメインサービスクラスの追加]ダイアログでエンティティフレームワークデータベースコンテキストを選択しましたが、使用可能なエンティティが表示されません。「OK」をクリックすると、VS2010は次のエラーメッセージを表示します。

---------------------------
Microsoft Visual Studio
---------------------------
Value cannot be null.

Parameter name: ssdlPath
---------------------------
OK   
---------------------------

これは、EDMXファイルがないためです(EDMXファイルで試してみましたが動作しました)。代わりに、個別のcsdl、msl、およびssdlファイルがあります。これは、複数のデータベースをサポートしたいからです。

データコンテキストでクラスLinqToEntitiesDomainServiceを使用するにはどうすればよいですか?エンティティオブジェクトとデータコンテキストは、POCOテンプレートを使用して生成されます。ドメインサービスクラスを手動で(ドメインサービスウィザードを使用せずに)追加すると、コンパイル時エラーが発生します。これは基本的に同じです。

MSBuild\Microsoft\Silverlight\v4.0\Microsoft.Ria.Client.targets(303,5): error : Value cannot be null.
MSBuild\Microsoft\Silverlight\v4.0\Microsoft.Ria.Client.targets(303,5): error : Parameter name: ssdlPath

誰か助けてもらえますか?

4

1 に答える 1

1

YorDoaminContainer.csdl、YorDoaminContainer.ssdl ファイルと YorDoaminContainer.msl ファイルを選択し、[プロパティ] で [ビルド アクション] を [埋め込みリソース] に設定します。次に、この 3 つのリソースの接続文字列が正しいことを確認します。

例えば:

<connectionStrings>
    <add name="DomainModel" 
         connectionString="metadata=res://*/NameSpace.DomainController.csdl|res://*/NameSpace.DomainController.ssdl|res://*/NameSpace.DomainController.msl;
         provider=System.Data.SqlClient;provider connection string='Data Source=localhost;
         Initial Catalog=DB;Integrated Security=True;Connection Timeout=60;
         providerName="System.Data.EntityClient" />
</connectionStrings>
于 2010-08-23T06:32:29.880 に答える