私はasp.net webapiを使用しており、Swaggerを使用してAutoRest経由でWPFアプリケーション内でRestApiを作成しています。 エラーが発生した場合に、返されたデータをどのように消費するかを調べる際に問題が発生しています。WebApiとSwagger
コントローラは次のとおりです。
AutoMapperのエラーに基づいてWebApiにエラーが表示されてしまいましたが、それが呑み込まれていました。レスポンスにエラーメッセージが返されています。これは素晴らしいことです。
ここでは、この呼び出しの現在のAutoRestコードを示します。
public static int? AddEditContract(this IBuxtedConAPI operations, ContractDto value)
{
return Task.Factory.StartNew(s => ((IBuxtedConAPI)s).AddEditContractAsync(value), operations, CancellationToken.None, TaskCreationOptions.None, TaskScheduler.Default).Unwrap().GetAwaiter().GetResult();
}
あなたが期待しているとおり、intです。コメントを外すと
//[SwaggerResponse(HttpStatusCode.InternalServerError ,Type = typeof(HttpError))]
int戻り型がオブジェクトに変わります。
本当の質問です。オブジェクトは、エラーが発生した場合は(成功して)簡単なint型だけで返された場合、私は拾うんどのように返された場合はここで はWEBAPI
public async Task<int> SaveContract(ContractDto entity)
{
using (var db = new BuxtedConAPI())
{
var ret = await db.AddEditContractAsync(entity);
return (int)ret;
}
}
へのWPFからの私のサービスコールです。
ありがとうございます。 Scott
私に戻ってくれてありがとう。 – scottsanpedro
こんにちはギャレット。あなたは最終的な答えとして提案していますか?もしそうなら、私は受け入れます。私はちょうど私がaspにかなり新しいものを見逃していないことを確認したかった。ありがとうScott – scottsanpedro
ええ、エラーレスポンスに 'default'を使うだけで、AutoRestはそれらの例外を生成します。 –