0

wcf-rest にアクセスしようとすると、次のエラーが発生します。

コントラクト 'SelectorFront' のオペレーション 'Login' は、WebGetAttribute/WebInvokeAttribute でメソッド 'Get' を指定しますが、メソッドに許可される値は GET または POST のみです。他の値は、'System.ServiceModel.Description.WebScriptEnablingBehavior' ではサポートされていません。

1 つのメソッド「Login」と 1 つのパラメータ「Username」を持つ wcf-rest を作成しました。これは私の関数呼び出しです。

localhost:2664/FrontService.svc/Login?Username=max

そして、私のwcfは次のとおりです

インターフェース

[OperationContract]
[WebInvoke(Method = "Get", UriTemplate = "/Login/{UserName}", ResponseFormat = WebMessageFormat.Json, RequestFormat = WebMessageFormat.Json)] 
string Login(string UserName);

サービス

public string Login(string UserName)
{
tblUser obj = (from m in dataContext.tblUsers
where m.UserName == UserName
select m).First();
JavaScriptSerializer oSerializer = new JavaScriptSerializer();
string sJSON = oSerializer.Serialize(obj);
return sJSON;
}

この問題の解決策は何ですか

4

1 に答える 1

1

「Get」ではなく「GET」を使用してみてください

明らかに大文字と小文字が区別されます。

[WebInvoke(Method = "GET" ...
于 2012-12-19T13:38:45.347 に答える