2017-12-22 10 views
0

このプロジェクトでは、.netコア2.0を使用しています。オブジェクトのプロパティは、http getメソッドのパラメータで常に0です。

私は現在、オブジェクトを検索するための単純なhttp getメソッドを持っています。パラメータのページングを追加したいので、ページングオブジェクトを追加しました。

問題は、私はメソッドを呼び出すたびに、ページング対象が、私はいくつかのオプションを試してみました

(制限のため、常に0とオフセット)のデフォルト値を持っているということですが、それらのどれも働きました。私は自分の問題を示すコードを投稿します。

コントローラメソッドは次のようになります。

[HttpGet] 
[Route("searchByName")] 
public async Task<IActionResult> SearchByName(string searchText, [FromQuery] Paging paging) 
{ 
    // Searching and returning results 
} 

ページングオブジェクトは、次のようになります。

[DataContract] 
public class Paging 
{ 
    public Paging() 
    { 
    } 

    public Paging(int offset, int limit) 
    { 
     Limit = limit; 
     Offset = offset; 
    } 

    [FromQuery(Name = "Limit")] 
    public int Limit { get; } 
    [FromQuery(Name = "Offset")] 
    public int Offset { get; } 
} 

私はリミット、闊歩のUIでメソッドを呼び出し、オフセットは常にあるたびに、 0

Example swagger call

そして、これは何ですか私はデバッグする方法に入る:

enter image description here

は、私が何かを忘れてしまったことがありますか?私はいつも2つの整数にパラメータを変更できますが、私は上記のようなオブジェクトを使用することを好むでしょう。私が何かを追加するのを忘れたら私に知らせてください!

+3

私の最初の試みは、プロパティに対して 'set;'を復活させることです。 –

+0

GETリクエストにボディがありません – Crowcoder

+0

@AndyG私はばかです...それはうまくいきました。必要に応じて質問を削除します。それは愚かな間違いでした – RandomStranger

答えて

2

この物件についてはを復活させてください。

与えられたデータからページングの新しいインスタンスが作成されますが、プロパティ値が空のコンストラクタに設定されていないため、設定可能でないため、既定値のままです。

関連する問題