Я уже решил свои проблемы. Я использовал тег формы, который публикуется в моем контроллере экспорта.
Внутри тега формы я использовал скрытое поле, в котором хранится мой массив идентификаторов, которые я проверил в сетке. Затем я позвонил отправить форму, используя JavaScript для публикации скрытой строки поля в контроллере экспорта. На контроллере я разобрал Id в массив, а затем запрос, чтобы получить указанные записи, которые нужно экспортировать. Ниже приведен краткий обзор моего результата.
<%using (Html.BeginForm("Export", "Test", FormMethod.Post, new {id="frmPost" }))
{ %>
<%=Html.Hidden("cmdListID")%>
....
<%} %>
JavaScript:
$('#cmdExport').click(function () {
var jsonObj = [];
var strData = "";
$('input[name="SelList"]:checked').each(function () {
jsonObj.push({ key: $(this).attr('id') });
});
var postData = { "listID": jsonObj };
if (jsonObj.length > 0) {
strData = JSON.stringify(postData);
$('#cmdListID').val(strData);
}
$('#frmPost').submit();
$('#cmdListID').val('');
});
Контроллер экспорта: я создал объект списка (используя сериализацию json) для анализа ожидаемого объекта списка.
Наконец, я снова обратился к базе данных, отфильтровав по тем идентификаторам, которые я получил, чтобы получить ожидаемые записи.
Надеюсь, что это поможет.