2014-09-30 42 views
0

我想用查詢參數定義一個路徑,但它似乎沒有映射。如何使用查詢參數定義南希路徑

的路徑很簡單,這裏有一個例子

獲取[「API /實體?頁= 1 &的pageSize = 10」]

雖然它一直打的是沒有定義的查詢字符串的路徑:

獲取['api/entities']

任何想法?

回答

2

查詢字符串不被認爲是路線的一部分,但你可以做到這一點使用一個conditional route

比如像這樣:

public class MyModule : NancyModule 
{ 
    public MyModule() 
    { 
     Get["api/entities", ctx => ctx.Query.ContainsKey("page") && ctx.Query.ContainsKey("pageSize")] = p => DoStuff(); 
     Get["api/entities", ctx => !(ctx.Query.ContainsKey("page") && ctx.Query.ContainsKey("pageSize"))] = p => DoOtherStuff(); 
    } 
} 

的第二個參數的路由謂詞采取在一個NancyContext對象。如果謂詞爲真,路由只匹配。

相關問題