クライアントから呼び出すストアドプロシージャを持つEF4モデルがあります。 サーバーのコードは次のようになります。クライアントからWCF DataService [WebGet]関数を呼び出す
[WebGet]
public IQueryable<SalesData> GetSalesReport(int reportType, int yr, int m, int d)
{
DateTime dt = new DateTime(yr, m, d);
return this.CurrentDataSource.RP_SalesReport(reportType, dt, dt).AsQueryable<SalesData>();
}
URL「HTTPを使用して、この使用してIEを呼び出す:// localhostを:?12345/MyService.svc/GetSalesReport reportType = 1 &年= 2009 &メートル= 4 &をd = 2 "期待どおりに動作します。
私のクライアントアプリケーションでは、サービス(http:// localhost:12345/MyService.svc)への参照を追加しましたが、試したことがありますが、関数GetSalesReportはオブジェクトブラウザに表示されません。 (通常のEFエンティティはオブジェクトブラウザに表示されます)
私の質問は次のとおりです。クライアントからこの関数を呼び出すにはどうすればよいですか?
クライアントに応じてこの関数を呼び出す方法に違いがあります(Windows Phone 7 Silverlightアプリケーションからこの関数を呼び出したいが、今はWPFテストクライアントを使用してテスト中)。
何の属性ServiceContract? –
これはADO.NET Data Service(コードネーム "Astoria")であり、唯一の属性は[WebGet]です。私が知る限り、ADO.NET Data Serviceに[ServiceContract]を追加することはできません。 – Ronny
生成されたコードを確認しましたか?生成されたエンティティを含む膨大なファイルが必要です。 GetSalesReportのエントリがあり、それはどのように見えるのですか? –