我們目前在Oracle DB中有一個視圖。目前,我創建了Web API來接受一個輸入參數並在where子句中的特定字段中使用它們。下面是該服務的代碼根據輸入參數動態地更改where子句
public HttpResponseMessage Getdetails(string JRS_NO)
{
List<OracleParameter> prms = new List<OracleParameter>();
List<string> selectionStrings = new List<string>();
string connStr = ConfigurationManager.ConnectionStrings["TGSDataConnection"].ConnectionString;
using (OracleConnection dbconn = new OracleConnection(connStr))
{
DataSet userDataset = new DataSet();
var strQuery = "SELECT * from LIMS_SAMPLE_RESULTS_VW where JRS_NO =" + JRS_NO;
var returnObject = new { data = new OracleDataTableJsonResponses(connStr, strQuery, prms.ToArray()) };
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;
}
}
視圖有16列it.Like REQUEST_ID,JRS_NO,ROOM,SUBMITDATE,DOB
等我檢查是否有離開我們可以得到任何字段作爲輸入參數,我們可以改變我們的where子句相應。 就像我們用api/TGSSampData?JRS_NO=379&SUBMITDATE='01-JAN-2016'
或api/TGSSampData?ROOM=111&DOB='22-AUG-2014'
調用API一樣。我不知道我們是否能夠動態地根據輸入參數