エンティティ フレームワークを介して SQL Server 2008 からデータを取得する WCF RIA プロジェクトがあります。すべてがうまくいっています。ただし、Windows モバイル経由でデータにアクセスしたいので、理解できる限り、ADO.NET データ サービスを作成する必要があります。私のドメイン サービスは BusinessLogicDomainService.cs と呼ばれます。対応する BusinessObjectsDataService を作成した直後に、次のように記述します。
public class BusinessObjectsDataService : DataService<BusinessObjectsDomainService>
{
public static void InitializeService(DataServiceConfiguration config)
{
config.SetEntitySetAccessRule("*", EntitySetRights.All);
config.SetServiceOperationAccessRule("*", ServiceOperationRights.All);
}
}
ただし、ブラウザ経由でsvcにアクセスすると、得られる唯一のもの
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
- <service xml:base="http://localhost:9589/BusinessObjectsDataService.svc/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:app="http://www.w3.org/2007/app" xmlns="http://www.w3.org/2007/app">
- <workspace>
<atom:title>Default</atom:title>
</workspace>
</service>
安らかな方法でデータを投稿するにはどうすればよいですか? ADO.NET Data Services で間違っているのでしょうか? WCF Ria を使用すると、すでに安らかな API があるように感じますが、どうすればそれを見つけることができますか?
ありがとうございました!
編集: msdn で前提条件をトリプルチェックしました。Msdn は、「DataService<(Of <(T>)>) の型は、エンティティ型の IQueryable<(Of <(T>)>) コレクションであるエンティティ セットを返すプロパティを少なくとも 1 つ公開する必要があります。このクラスエンティティ リソースを更新できるようにするには、IUpdatable インターフェイスも実装する必要があります。」私のビジネス ドメイン サービスの一部を次の図に示します。これには IQuerable 関数があります。
代替テキスト http://i23.photobucket.com/albums/b352/grnemo/Untitled-15.png
編集 2:このことから、RIA サービスを検出可能にする方法についての解決策を探していることがわかりました。