通过遵循在线教程,我使用WebAPI创建了基本应用程序。它可以正常工作。 GET方法从数据库表中检索列表,并将其填充在前端网站中。我只是试图通过传递一个或多个参数来过滤该列表。
这是EmployeeController.cs文件中的代码。大多数代码与模板创建的代码相同。 (很抱歉,但是我想提供足够的信息)
我可以通过修改“ return db.Employees;”来实现我的目标吗?行,还是我需要更多参与?
谢谢您的帮助!
for value in sp500['vix10dFuture']:
value = np.where(sp500['vix'].shift(-30) >= sp500['vix'] or 16, 1, 0)
sp500['vix30dFuture'] = value
答案 0 :(得分:0)
In在我的YouTube频道视频here中回答了您的问题。
假设您要使用员工代码过滤员工,则api方法将像这样。
public IQueryable<Employee> GetEmployees(string empCode)
{
return db.Employees.Where(x => x.EMPCode==empCode);
}
可以通过查询字符串传递相应的参数。像这样:http://localhost:46568/api/employee?empCode=BJC
public IQueryable<Employee> GetEmployees(string empCode,string mobile)
{
return db.Employees.Where(x => x.EMPCode == empCode || x.Mobile == mobile);
}
例如请求:http://localhost:46568/api/employee?empCode=BJC&mobile=754010
答案 1 :(得分:0)
OData查询选项:- 客户端在请求URI中发送一些参数并将这些参数应用到服务器端以在从API服务接口获取数据的同时执行所需的操作,这可能对您有帮助。
[MyQueryable]
public IQueryable<Employee> GetEmployees(ODataQueryOptions opts)
{
if (opts.OrderBy != null)
{
opts.OrderBy.Validator = new MyOrderByValidator();
}
var settings = new ODataValidationSettings()
{
};
opts.Validate(settings);
IQueryable results = opts.ApplyTo(db.Employees.AsQueryable());
return results as IQueryable<Employee>;
}