내 응용 프로그램은 C# .Net으로 코딩 된 Razor View Engine이있는 Asp.Net MVC3에 있습니다. 내 Asp.Net MVC3보기에서 WebGrid를 채우고 싶습니다.Json 반환시 WebGrid를 채우는 방법 Asp.Net MVC3 결과
그러나 제 요구 사항은 일부 dropDowns를 선택했을 때 WebGrid를 표시하려고합니다. 다음은 내 JSON
[AcceptVerbs(HttpVerbs.Get)]
public JsonResult getPendingInvoices(Int64 candID, DateTime InDate)
{
Int64 timeId;
var getTimeSheetId= from k in db.TimeSheetInfoes
where k.PersonalInformationID == candID && k.TimeSheetDate == InDate && k.InvoicedFlag == false
select k.TimeSheetID;
timeId = getTimeSheetId.Single();
var getInvoice = (from K in db.TimeSheetTasks
where K.TimeSheetID == timeId
select new TimeSheetsTaskClass { TaskInfoId =(Int64)K.TimeSheetID, Task = K.Task, TaskDateDay = (DateTime)K.TaskDate, ProjectNameDay = K.ProjectName, Day=K.Day, TaskHours = (decimal)K.TaskHours, ApprovingManager = K.ApprovingManager, OTHours = (decimal)K.OTHours }).ToList();
return Json(getInvoice, JsonRequestBehavior.AllowGet);
}
날짜와 이드 선택 나의 값으로부터 전달되는 후보입니다. 다음은 내 Jquery입니다.
$("#MyDropdown").live("change", function() {
$.getJSON("/../Invoice/getPendingInvoices", { candID: $("#ddlCandidateDispName").attr("value"), InDate: $("#dtpInvoiceDate").val() }, function (data) {
$.each(data, function (i, TimeSheetsTaskClass) {
});
grid = new WebGrid(Model);
});
}
});
이것은 내가 시도한 것입니다. TimeSheetsTaskClass의 데이터로 WebGrid를 채 웁니다. 다음은
다음public class TimeSheetsTaskClass
{
public Int64 TaskInfoId { get; set; }
public string Task { get; set; }
public DateTime TaskDateDay { get; set; }
public string ProjectNameDay { get; set; }
public string Day { get; set; }
public Decimal TaskHours { get; set; }
public decimal OTHours { get; set; }
public string ApprovingManager { get; set; }
}
메신저는 WebGrid 변수를 선언하는 방법을 내 클래스 아래
@model IEnumerable<RecruitmentPortal.Controllers.InvoiceController.TimeSheetsTaskClass>
를 사용하여 메신저가 얼마나 내 컨트롤러 내 TimeSheetsTaskClass입니다.
var grid = new WebGrid(Model);
다음은 어떻게 내 cshtml에서 내 webGrid를 보여 주는지입니다.
<div id="grids">
@grid.GetHtml()
</div>
어떻게하면 WebGrid에 데이터를 표시 할 수 있습니까?