我有一条返回如下字典的路线:
public class HomeModule : NancyModule
{
public HomeModule()
{
Get["/"] = _ => new Dictionary<long, long> {{1, 2}, {3, 4}};
}
}
当我打电话给它时,我收到状态为200的回复,但回复正文如下:
Unexpected 'E'
有什么问题?
南希版本1.4.3。
答案 0 :(得分:1)
JSON键必须是 string ,因此字典应采用以下格式:
public class HomeModule : NancyModule
{
public HomeModule()
{
Get["/"] = _ => new Dictionary<string, long> {{"1", 2}, {"3", 4}};
// ^
}
}
结果将是:
{
"1": 2,
"3": 4
}
答案 1 :(得分:0)
您可以在模块中使用IResponseFormatter的扩展程序来解决此问题。
this.Response.AsJson(new Dictionary<int,int>{{2,4}});