У меня есть следующий индекс-метод в моем HomeController:Pass ViewModel для просмотра дважды
var homeIndexModel = new HomeIndexModel()
{
ActiveTasks = tasks.Where(
task =>
task.TaskStatus != TaskStatusEnum.Deferred &&
task.TaskStatus != TaskStatusEnum.Verified && task.TaskStatus != TaskStatusEnum.Resolved),
ClosedTasks = tasks.Where(
task =>
task.TaskStatus == TaskStatusEnum.Resolved),
DeferredTasks = tasks.Where(
task =>
task.TaskStatus == TaskStatusEnum.Verified ||
task.TaskStatus == TaskStatusEnum.Deferred),
Rules = m_errandSvc.GetAllRules(),
Sources =
Enum.GetValues(typeof(TaskSourceEnum)).Cast<TaskSourceEnum>().AsEnumerable().OrderBy(taskSource => taskSource.AsString()),
Types =
Enum.GetValues(typeof(TaskTypeEnum)).Cast<TaskTypeEnum>().AsEnumerable().OrderBy(taskSource => taskSource.AsString()),
Counties = counties,
Reports = null,
};
return this.View(homeIndexModel);
Это homeIndexModel передается в виду, когда вы посещаете Firstpage. Как вы можете видеть, я объявляю объект Report-null равным null.
Я хочу использовать это Report-свойство homeIndexModel, когда я выполняю поиск На первой странице. Когда я нажимаю «Поиск», появляется модальный текст и результат поиска распечатывается.
Вот мой поиск-метод в контроллере:
[HttpPost]
public ActionResult SearchReport(string searchVal, string searchParam)
{
var reports = m_errandSvc.GetReportSearch(searchVal, searchParam).ToList();
var homeIndexModel = new HomeIndexModel()
{
Reports = reports
};
return this.View(homeIndexModel);
}
Как вы можете видеть, я assaign в отчет-свойство с результатом GetReportSearch. Я хочу перебрать этот объект ниже:
<!-- Modal -->
<div class="modal" id="myModalSearch" aria-hidden="true" data-keyboard="false" data-backdrop="static">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-body">
<div class="panel panel-default">
<div class="panel-heading">
<h4>FISH</h4>
@if (Model.Reports != null)
{
}
</div>
</div>
</div>
</div>
</div>
</div>
У меня есть проблема в том, что, когда я добавить Еогеасп, как это ниже, моя отладка режим квиты.
@if (Model.Reports != null)
{
foreach(var itm in Model.Reports)
{
<div>@itm.Report_id</div>
<div>@itm.ReportSource</div>
}
}
Как я могу решить эту целую вещь с homeIndexViewModel и распечатать мой поиск результата, как я хочу?
Herer мой JQuery, который я использую, чтобы получить возможность отправлять к поиску методу:
$('#searchReports').click(function() {
var searchVal = $('#searchVal').val();
$.ajax({
contentType: "application/json; charset=utf-8",
dataType: "json",
type: "POST",
url: DataReview.BASE + "/Home/SearchReport",
data: JSON.stringify(
{
'searchVal': searchVal,
'searchParam': searchParam
}
)
}).done(function (data) {
console.log("YES");
}).fail(function(data) {
console.log("Fail " + data);
});
});
Конечно, это не войдет в цикл, поскольку 'Model.Reports' является недействительным в своем действии – Imad
Но после моего поиска? Я хочу, чтобы Он появился после моего поиска. – Bryan
любезно описать структуру проекта – Imad