Asp.net web api webapi参数过滤
这必须是简单的,我是难以置信的密集,但我找不到一个例子来帮助我解决它。我想根据通过参数传入的Asp.net web api webapi参数过滤,asp.net-web-api,Asp.net Web Api,这必须是简单的,我是难以置信的密集,但我找不到一个例子来帮助我解决它。我想根据通过参数传入的assessmentId筛选我的t类项目列表。我可以得到参数值,但我不确定如何编写查询 我的模型是使用模型创建向导从现有数据库生成的 谢谢你的帮助 public IEnumerable<tblAsset> GettblAssets() { NameValueCollection nvc = HttpUtility.ParseQueryString(Request.RequestUri.Qu
assessmentId
筛选我的t类
项目列表。我可以得到参数值,但我不确定如何编写查询
我的模型是使用模型创建向导从现有数据库生成的
谢谢你的帮助
public IEnumerable<tblAsset> GettblAssets()
{
NameValueCollection nvc = HttpUtility.ParseQueryString(Request.RequestUri.Query);
var assessmentId = nvc["aid"];
//limit the assets by assessmentId somehow and return
}
public IEnumerable gettSet()
{
NameValueCollection nvc=HttpUtility.ParseQueryString(Request.RequestUri.Query);
var assessmentId=nvc[“辅助”];
//通过评估ID限制资产并返回
}
您可以在数据库返回的IQueryable
实例上使用.Where
扩展方法:
public IEnumerable<tblAsset> GettblAssets()
{
NameValueCollection nvc = HttpUtility.ParseQueryString(Request.RequestUri.Query);
var assessmentId = nvc["aid"];
// TODO: you might need to adjust the property names of your model accordingly
// Also if the assessmentId property is an integer on your model type
// you will need to parse the value you read from the request to an integer
// using the int.Parse method
return db.tblAsset.Where(a => a.assessmentId == assessmentId);
}
public IEnumerable gettSet()
{
NameValueCollection nvc=HttpUtility.ParseQueryString(Request.RequestUri.Query);
var assessmentId=nvc[“辅助”];
//TODO:您可能需要相应地调整模型的属性名称
//此外,如果assessmentId属性是模型类型上的整数
//您需要将从请求读取的值解析为整数
//使用int.Parse方法
返回db.tblAsset.Where(a=>a.assessmentId==assessmentId);
}
谢谢!成功了!是的,它很简单,而且我很密集。这不是你问题的一部分,但你也可以像这样访问查询字符串参数(省去了你必须使用HttpUtility和手动解析等)。。。IEnumerable GettblAssets([FromUri]int?assessmentId=null)