Wir erstellten die Web-API für die Abfrage der Oracle-DB, die das Ergebnis im folgenden Format in der JSON-Datei zurückgab. Damit erhält die API das Array der Eingabeparameter. Da das Abfrageergebnis für die folgende Abfrage so groß ist, gibt es 313568 zurück, wenn wir es im SQL Developer versuchen.Ausnahme des Typs 'System.OutOfMemoryException' wurde ausgelöst WEB-API
SELECT * von STCD_PRIO_CATEGORY wo STPR_STUDY.STD_REF IN ("BL001, TM002")
Im Folgenden wird der Code wir
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;
verwenden Wenn ich die URL bin mit https://bhbl.abc.org/api/Sample?id= & 'BL001' id = ‚TM002‘ für die DB als Abfrage
Aber wenn ich die URL https://bhbl.abc.org/api/Sample?id= ‚BL001‘ verwenden es gibt Ergebnis, das j Ust 41552 Datensätze
Wie API erstellen, die eine große Menge an Daten zurückgibt. Jede Hilfe wird sehr geschätzt
Können wir dies tun, ohne Paging? Weil der Client sofort nach dem Ergebnis sucht – trx
@trx Client process einmal, mehrere Anrufe api, vervollständigen alle Datenerfassung. –