XamarinフォームからWCFサービスで簡単なログイン機能を呼び出そうとしています。XamarinフォームWCF非同期呼び出しvoid文字列関数の戻り値
私は問題なくサービスを参照しました。
私はこのようなクライアントオブジェクトを定義しています
Service1Client client = new Service1Client();
マイサービス関数名は、ログインで、文字列を返します。私はXamarinからその関数を呼び出すようにしようとすると、私は唯一の代わりにログインのLoginAsync機能へのアクセスを持ってServiceClientオブジェクト
Public Function Login(ByVal wUser As String, ByVal wPassword As String) As String Implements IService1.Login
Return String.Format("Test")
End Function
フォーム:ここでの定義です。少し調べてみたら、非同期関数で待たなければならないことが分かりました。
私はそれを試してみましたが、その後の行は、エラーが表示さ「を使用することはできませんが、ボイドを待つ」:
await client.LoginAsync("user", "password");
私が間違っているのか?
WCF関数が正しく実行され、 "Test"文字列が返されますが、Xamarinフォームでそれを取得する方法がわかりません。
関数が返す文字列を取得するにはどうすればよいですか?
ありがとうございます。
あなたは "string value = await client.LoginAsync(" user "、" password ");" – Jason
はい、私はそれを試みましたが、 "空で待つことができません"というエラーがまだ残っています。私の関数はvoid型ではないので、これは分かりません。私がawaitを削除した場合、エラーは "voidから文字列に変換できません"です。 – Michelh91
LoginAsyncメソッドの署名は何ですか? asyncを使用するのではなく、コールバックメソッドが必要な場合があります。 – Jason