Asked by andrewanger
Hello I am trying to Have my MVC controller display data I pull...
Hello I am trying to Have my MVC controller display data I pull from a Stores interface and convert it to JSON. From there I will take the data and put it in a table format but right now I am stuck on get the data pulled and converted to JSON.
using System;
using AutoMapper;
using log4net;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using DataIssueResolution.Web.ViewModels.Home;
using SHP.Apps.DataIssueResolution.Stores;
using SHP.Apps.DataIssueResolution.ServiceModels;
using Newtonsoft.Json;
using Newtonsoft.Json.Serialization;
namespace DataIssueResolution.Web.Controllers
{
//[Authorize]
//Authorize commented out for now
public class DataIssueResolutionController : BaseController
{
// private readonly IWorkflowQueueStore _workflowQueueStore;
private readonly IDataIssuesStore _dataIssuesStore;
private readonly IMapper _mapper;
public DataIssueResolutionController(
ILog logger,
IMapper mapper,
IDataIssuesStore dataIssuesStore,
//IWorkflowQueueStore workflowQueueStore,
UserTokenGenerator userTokenGenerator,
SystemTokenGenerator systemTokenGenerator
)
: base(logger, userTokenGenerator, systemTokenGenerator)
{
_mapper = mapper;
_dataIssuesStore = dataIssuesStore;
//_workflowQueueStore = workflowQueueStore;
}
public ActionResult Index(string dataIssueId)
{
return Execute(() =>
{
var viewModel = _dataIssuesStore.GetById(new DataIssueByIdRequest
{
DataIssueId = dataIssueId,
FillFlags = DataIssueFillFlags.All
}, UserToken());
var jsonResult = JsonConvert.SerializeObject(
viewModel,
Newtonsoft.Json.Formatting.None,
new JsonSerializerSettings { ContractResolver = new CamelCasePropertyNamesContractResolver() }
);
return Content(
jsonResult,
"application/json");
});
}
public ActionResult DataIssue(string dataIssueId)
{
return Execute(() =>
{
var viewModel = _dataIssuesStore.GetById(new DataIssueByIdRequest
{
DataIssueId = dataIssueId,
FillFlags = DataIssueFillFlags.All
}, UserToken());
var jsonResult = JsonConvert.SerializeObject(
viewModel,
Newtonsoft.Json.Formatting.None,
new JsonSerializerSettings { ContractResolver = new CamelCasePropertyNamesContractResolver() }
);
return Content(
jsonResult,
"application/json");
});
}
[HttpGet]
public ActionResult DataIssue(string workflowQueueId, DateTime fromDate, DateTime thruDate, DataIssueFillFlags fillFlags)
{
return Execute(() =>
{
var request = _dataIssuesStore.GetByWorkflowQueueIdAndStatusIdsAndDateRange(new DataIssuesByWorkflowQueueIdAndStatusIdsAndDateRangeRequest
{
WorkflowQueueId = workflowQueueId,
// DataIssueStatusIds = statusIds,
FromDate = fromDate,
ThruDate = thruDate,
FillFlags = DataIssueFillFlags.All,
}, DataIssueUserToken());
if (request == null || request.DataIssues == null)
{
_logger.WarnLog(String.Format("Workflow Queue Id by member {0} not found.", workflowQueueId));
return HttpNotFound();
}
var jsonResult = JsonConvert.SerializeObject(
request,
Newtonsoft.Json.Formatting.None,
new JsonSerializerSettings { ContractResolver = new CamelCasePropertyNamesContractResolver() }
);
return Content(
jsonResult,
"application/json");
});
}
}
}
Service:
_dataIssueStore.GetByWorkflowQueueIdAndStatusIdsAndDateRange
_dataIssueStore.GetByDataIssueIds
DAL:
List<DataIssue> dataIssues = GetDataIssues(sqlParameters, "DataIssueStore.Usp_GetByWorkflowQueueIdAndStatusIdsAndDateRange", fillOptions);
List<DataIssue> dataIssues = GetDataIssues(sqlParameters, "DataIssueStore.Usp_GetByIds", fillOptions);
Unlock full access to Course Hero
Explore over 16 million step-by-step answers from our library
Get answerOur verified expert tutors typically answer within 15-30 minutes.