Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net web api 用于批量读取的RESTWebAPI设计_Asp.net Web Api - Fatal编程技术网

Asp.net web api 用于批量读取的RESTWebAPI设计

Asp.net web api 用于批量读取的RESTWebAPI设计,asp.net-web-api,Asp.net Web Api,我必须设计一个API或一组API,用于从SQLServer表中读取批量数据,并且我需要按日期和其他参数获取数据。现在我不想在API中有N个方法的列表,因为这个列表是不确定的,它会根据用户的需要不断增加 我应该如何设计这个。 < P>我会考虑使用WCF数据服务和OData,这样您的方法可以接受“通过WORD”请求的SQL。这将为您提供一个可以接受筛选条件的URL,例如 //Products表中的所有数据(在服务器端启用分页!) //添加WHERE子句 http://localhost/Produc

我必须设计一个API或一组API,用于从SQLServer表中读取批量数据,并且我需要按日期和其他参数获取数据。现在我不想在API中有N个方法的列表,因为这个列表是不确定的,它会根据用户的需要不断增加


<>我应该如何设计这个。

< P>我会考虑使用WCF数据服务和OData,这样您的方法可以接受“通过WORD”请求的SQL。这将为您提供一个可以接受筛选条件的URL,例如

//Products表中的所有数据(在服务器端启用分页!)

//添加WHERE子句

http://localhost/Products?$filter=Category eq 'Toys'
//选择列的子集

http://localhost/Products?$select=ToyName,ToyPrice
您也可以使用ASP.NET Web API项目类型并启用OData支持,但URL功能稍有限制


话虽如此,我认为使用web服务进行批量数据操作是不寻常的,因为数据序列化涉及的开销以及必须通过HTTP拆分数据包的方式。这取决于您的数据到底有多大。

谢谢。这就是我的问题。我不能让1个webapi一次带来300000行,但我不想让单独的get方法通过根据不同的参数过滤记录来获取记录。请建议我们如何设计api,使其具有不同的过滤器和一个get。
http://localhost/Products?$select=ToyName,ToyPrice