jquery ajaxを使用しているasp.netページがあります。$.ajax で URL として使用できるメソッドを作成する必要があります。ネットで検索したところ、WCF サービスを作成する必要があることがわかりました。私の解決策はasp.net 3.5にあります。このような IJsonDataService.cs インターフェイスに2つのメソッドを作成しました
[ServiceContract]
public interface IJsonDataService
{
[OperationContract]
Person DoWork();
[OperationContract]
string GetData();
}
and then in class file I have implemented them like this:
[WebGet(RequestFormat= WebMessageFormat.Json, ResponseFormat=WebMessageFormat.Json,UriTemplate="data/{id}")]
public Person DoWork(){
return new Person();
}
[WebGet(RequestFormat= WebMessageFormat.Json, ResponseFormat=WebMessageFormat.Json,UriTemplate="data/{id}")]
public string GetData(string parameter)
{
return "this is" + abc;
}
私の web.config は次のようになります。
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior name="JsonDataServiceBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
</serviceBehaviors>
</behaviors>
<services>
<service behaviorConfiguration="JsonDataServiceBehavior" name="JsonDataService">
<endpoint address="" binding="wsHttpBinding" contract="IJsonDataService">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
</service>
</services>
</system.serviceModel>
これらのメソッドに Id を渡し、データベースにクエリを実行して結果を返し、結果を json としてフォーマットし、その json を $.ajax メソッドに戻します。上記のメソッドでどのような変更を加える必要がありますか?また、データを json として返し、それを $.ajax で使用するにはどうすればよいですか? 提案してください。