JSON 결과를 아래 형식으로 반환하는 Oracle DB를 쿼리하기 위해 웹 API를 만들었습니다. API가 입력 매개 변수의 배열을 가져옵니다. 쿼리 결과가 아래의 쿼리와 같이 너무 커서 SQL Developer에서 시도 할 때 313568을 반환합니다. STPR_STUDY.STD_REF IN ("BL001, TM002")는 아래 'System.OutOfMemoryException'유형의 예외가 발생했습니다. WEB API
내가 URL https://bhbl.abc.org/api/Sample?id= 'BL001'& ID를 사용하고 때 우리가public HttpResponseMessage Getdetails([FromUri] string[] id)
{
string connStr = ConfigurationManager.ConnectionStrings["ProDataConnection"].ConnectionString;
using (OracleConnection dbconn = new OracleConnection(connStr))
{
var inconditions = id.Distinct().ToArray();
var srtcon = string.Join(",", inconditions);
DataSet userDataset = new DataSet();
var strQuery = @"SELECT * from STCD_PRIO_CATEGORY where STPR_STUDY.STD_REF IN(" + srtcon + ")";
using (OracleCommand selectCommand = new OracleCommand(strQuery, dbconn))
{
using (OracleDataAdapter adapter = new OracleDataAdapter(selectCommand))
{
DataTable selectResults = new DataTable();
adapter.Fill(selectResults);
var returnObject = new { data = selectResults };
var response = Request.CreateResponse(HttpStatusCode.OK, returnObject, MediaTypeHeaderValue.Parse("application/json"));
ContentDispositionHeaderValue contentDisposition = null;
if (ContentDispositionHeaderValue.TryParse("inline; filename=ProvantisStudyData.json", out contentDisposition))
{
response.Content.Headers.ContentDisposition = contentDisposition;
}
return response;
를 사용하는 코드입니다 STCD_PRIO_CATEGORY에서
로 DB를 쿼리하지만이 URL https://bhbl.abc.org/api/Sample?id= 'BL001'을 사용하고 경우에 = 'TM002' 그것은 J가 결과를 반환 ust 41552 records
방대한 양의 데이터를 반환하는 API를 만드는 방법. 모든 도움을 크게 주시면 환영합니다.
우리는이 작업을 수행 할 수 있습니까? 클라이언트가 즉시 결과를 찾고 있기 때문에 – trx
@trx 클라이언트 프로세스가 한 번, 여러 번 호출 api, 모든 데이터 수집을 완료하십시오. –