値として、私は次のように定義されたAC#のWebサービスがあります。JSON Webサービス - NULL
[WebInvoke(Method = "POST",
ResponseFormat = WebMessageFormat.Json,
RequestFormat = WebMessageFormat.Json,
BodyStyle = WebMessageBodyStyle.Wrapped,
UriTemplate = "BCryptLogin")]
LoginResponse BCryptLogin(LoginData logindata);
をそして「logindata.loginにアクセスしようとすると、実際の機能は
public LoginResponse BCryptLogin(LoginData logindata)
{
string login = logindata.login;
string password = logindata.password;
// code be here
}
です"私はNullReferenceExceptionを取得します:
System.NullReferenceException was unhandled by user code
Message=Object reference not set to an instance of an object.
Source=LoginService
StackTrace:
at LoginService.LoginService.BCryptLogin(LoginData logindata) in C:\services\LoginService\LoginService\LoginService.svc.cs:line 74
at SyncInvokeBCryptLogin(Object , Object[] , Object[])
at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs)
at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc)
これは私のfですPOST Webサービスを最初に試してみると、私はかなり無知です:S何がうまくいかないのですか?
私のテスト要求は次のようになります。
{"login":"username","password":"password"}
(も試してみました)
{"LoginData":{"login":"username","password":"password"}}
そしてLoginDataオブジェクトは、次のように定義されています
[DataContract]
public class LoginData
{
[DataMember]
public string login { get; set; }
[DataMember]
public string password { get; set; }
}
74行目は何ですか? (LoginService.svc.cs:line 74)デバッガをアタッチし、nullを確認します。トレースを追加し、フィドラーを使用します。 – bryanmac
'logindata'が' null'かどうか確認しましたか? – devstruck
あなたのlogindataオブジェクトのようなサウンドはnullです。 – markp3rry