ODataを呼び出すときにクライアントでNULL(404 Not Found)を処理する方法がわかりません。指定されたエンティティの関数。 「Context.Objects.ByKey(1).SomeFunction()。GetValueメソッド()」
ようODataサービス4.xを使用するMicrosoft OData Client 6.xは、クライアントでNULL戻り値(404 Not Found)を処理します。
例>サービス呼び出し私はサービスから「NULL」を取得したいが、代わりにクライアント上でそれが見つかりません404をスローします例外。
"NULL"を返すようにサービスを変更すると、サーバーでシリアル化例外が発生し、サーバーに "OK(null)"を返すように指示すると、シリアル化例外も発生します。ここで
はコントローラ
[HttpGet]
public IHttpActionResult SomeFunction([FromODataUri] int key)
{
string something = null;
// Do some check and adjust the variable "something"
if (string.IsNullOrWhiteSpace(something))
{
return NotFound();
}
else
{
return Ok(something);
}
}
そして、ここでのサーバーコードがWebApiConfigコード
builder.EntityType<SomeObject>().Function("SomeFunction").Returns<string>();
である私からNULL値を処理する「正しい」方法を見つけるように見えることはできませんMicrosoft ODataクライアントを使用する場合のodataサービス。
多分、私はクライアントの "ReceivingResponse"イベントに接続して、404 Not Foundのいくつかの方法を処理できますか?任意の提案...