我正在寻找使用WebApi的示例Odata应用程序,但不使用EF。我的要求是在控制器内部实现一些动作方法(从ODataController派生),返回可以查询的复杂对象。这些操作方法也应该能够采用多个参数。返回的数据是从多个数据源中提取的,因此使用实体框架不是一种选择。 我想实现这样的方法:
public List RetrieveCustomersByFilter(string name,string lastName,CustomerTypeEnum){...业务逻辑在这里......}
我在网上做了很多研究,但我仍然无法找到具体的例子。其中大多数都显示了不接受任何参数(或id / key)的简单方法,并返回标准对象列表。
任何人都可以提供样本或指向一个显示如何进行此操作的链接吗?
由于
答案 0 :(得分:0)
我猜你需要使用敏捷开发。 首先创建一个模型类。
public class Model{
public string ID {get; set;}
public string name {get; set;}
}
然后创建一个dal类,
public class Dal{
private Model model = new Model();
public List<Model>getAllRecords()
{
List<model> list = new List<model>();
.....
.....
list.Add(new Model{
ID =.....,
name = ...
});
}
}
然后创建一个逻辑类,它将从dal获取数据,并使用linq查询数据,你也可以过滤你想要进入的数据
public class Logic{
private DAL dal = new DAL();
public dynamic dataGet(int id, string name){
var a = (from data where dal.getAllRecords()
where data.ID == id && data.name == name
select new{
dataid = data.ID
daname = data.name
}).ToList();
return a;
}
}
我希望它会帮助你
答案 1 :(得分:0)
检查这个有最新的Web API 2和ODATA样本的所有步骤 ODATA v4 sample with asp.net web api 2