我有RequestDTO在该类中有另一个DTO,它看起来像这样:
[Route("/TheDtoRequest", "GET")]
[Route("/TheDtoRequest/{do_something_here_to_fill_foobar}", "GET")]
public class TheDtoRequest
{
public string Foo { get; set; }
public int Bar { get; set; }
public FooBar Foobar { get; set; }
}
public class FooBar
{
public string AnotherFoo {get; set;}
public int AnotherBar {get; set;}
}
如何使用AnotherFoo参数请求?
答案 0 :(得分:2)
您可以使用JSV格式将GET请求中的FooBar
参数填充到/TheDtoRequest
。您可以了解JSV format here。 JSV格式(即类似JSON的分离值)是一种受JSON启发的格式,它使用CSV样式的转义来实现最小的开销和最佳性能。
/ TheDtoRequest富=你好&安培;酒吧= 1&安培; FooBar的= {AnotherFoo:的HelloWorld,AnotherBar:123}
因此,对/TheDtoRequest
路由的查询会导致填充类。但是你也可以在路线中使用JSV。所以考虑到这条路线:
/ TheDtoRequest / {Foobar的}
查询将产生相同的填充对象:
/ TheDtoRequest / {AnotherFoo:的HelloWorld,AnotherBar:123}?美孚=你好&安培;酒吧= 1
或者这条路线:
/ TheDtoRequest / {美孚} / {酒吧} / {Foobar的}
/ TheDtoRequest /你好/ 1 / {AnotherFoo:的HelloWorld,AnotherBar:123}
more complex object represented as JSV here有一个很好的例子。
希望这有帮助。