2

クエリ サービスのフロント エンドであるエンドポイントを作成したいと考えています。また、クエリ文字列パラメーターを介して任意の数の引数をサービスに渡すことができるシナリオをサポートしたいと考えています。

これは、私が望む種類の URL です。

/queries/MyQuery?argument1=value&arg2=value

DTO オブジェクトの構造自体はかなり単純です ( のようなプロパティDictionary<string, object>) が、ルートがどのように見えるべきかで行き詰まっています。これは RouteAttribute を介して可能ですか、それとも別の方向に進む必要がありますか?

4

1 に答える 1

3

これは ServiceStack でのルーティングを説明する良い答えです。

PathInfoのみがルートの一部であり、すべてのルート/サービスのリクエスト DTO も、QueryString/FormData などのリクエスト パラメータに基づいて自動的に入力されます。

したがって、QueryString がどうなるかわかっている場合は、それを Request DTO のプロパティとして追加するだけで、自動的に設定されます。

それらが何であるかわからないが、まだ QueryString にアクセスしたい場合はbase.Request、Service のプロパティから取得できます。

 class MyServices : Service 
 {
     public object Get(MyQuery request) 
     {
        foreach (var entry in base.Request.QueryString) {
            ...
        }
     }
 }
于 2012-09-15T00:01:42.217 に答える