Den*_*ail 2 c# .net-4.5 asp.net-web-api
假设我有这个URL:
api.XXX.com/cities?risk=a,b&rating=x,y
Run Code Online (Sandbox Code Playgroud)
我想要的是风险类别为A或B且评级为X或Y的城市列表.我应该如何实施?
我知道我可以获得风险和评级键的值,但接着是什么?是否最好简单地解析字符串并使用switch语句?还是有更好的方法?
更标准的方法是:
api.XXX.com/cities?risks=a&risks=b&ratings=x&ratings=y
Run Code Online (Sandbox Code Playgroud)
这可以由控制器动作处理,如下所示:
[HttpGet]
public async Task<IHttpActionResult> SearchCities(
List<string> risks,
List<string> ratings)
{
var results = this.dbContext.Cities.AsQueryable();
if(risks.Any())
{
results = results.Where(c => c.Risks.Any(cr => risks.Contains(cr.Code));
}
if(ratings.Any())
{
results = results.Where(c => ratings.Contains(c.Rating));
}
...
}
Run Code Online (Sandbox Code Playgroud)
类似的答案在这里.
| 归档时间: |
|
| 查看次数: |
144 次 |
| 最近记录: |