public JsonResult VariablesSearch(JQueryDataTablesModel jQueryDataTablesModel, string identifier)
{
int totalRecordCount;
int searchRecordCount;
//Get Connection string
var entityConnectionString = HydroServerToolsUtils.BuildConnectionStringForUserName(HttpContext.User.Identity.Name);
//var entityConnectionString = HydroServerToolsUtils.GetDBEntityConnectionStringByName(connectionName);
if (String.IsNullOrEmpty(entityConnectionString))
{
ModelState.AddModelError(String.Empty, Ressources.HYDROSERVER_USERLOOKUP_FAILED);
}
var repository = new VariablesRepository();
var items = repository.GetVariables(entityConnectionString, startIndex: jQueryDataTablesModel.iDisplayStart,
pageSize: jQueryDataTablesModel.iDisplayLength, sortedColumns: jQueryDataTablesModel.GetSortedColumns(),
totalRecordCount: out totalRecordCount, searchRecordCount: out searchRecordCount, searchString: jQueryDataTablesModel.sSearch);
var result = from c in items
select new[] {
//c.VariableID,
c.VariableCode,
c.VariableName,
c.Speciation,
c.VariableUnitsName,
c.SampleMedium,
c.ValueType,
c.IsRegular,
c.TimeSupport,
c.TimeUnitsName,
c.DataType,
c.GeneralCategory,
c.NoDataValue
};
return this.DataTablesJson(items: result,
totalRecords: totalRecordCount,
totalDisplayRecords: searchRecordCount,
sEcho: jQueryDataTablesModel.sEcho);
}