Не используйте весь вид для «подтверждения удаления». Используйте Html-помощник и javascript 'verify ()'. то есть. визуализируйте форму публикации и удалите ссылку с помощью помощника, чтобы, когда пользователь нажимает кнопку «удалить», он получал js-запрос подтверждения «обязательно удалить?» и в порядке, функция «возвращает истину» и вызывает отправку в форме для удаления. тогда действие удаления просто перенаправляет туда, куда обычно. Я надеюсь, что вы используете разные действия для удаления различных объектов, которые вы пытаетесь удалить. если ваш план состоит в том, чтобы иметь общее действие удаления, ну, это сложнее (и не рекомендуется IMO).
Мой помощник удаления включает в себя множество вещей, но часть удаления выглядит следующим образом (с фрагментами):
string deleteLink = String.Format(@"<a onclick=""deleteRecord({0})"" href='#'>Delete</a><form id='deleteForm' method='post' action='" +
routeRelativePath + "/" + actionPrefix + "Delete/" + model.ID +
@"'></form>", model.ID);
.. и он (помощник) также присоединяет некоторые js:
function deleteRecord(recordId) {
if(confirm('Are you sure you want to delete this {friendlyModelName}?\nNOTE: There is no Undo.')) {
// Perform delete
var action = "{routeRelativePath}/{actionPrefix}Delete/" + recordId;
// jQuery non-AJAX POST version
$("form#deleteForm").submit();
}
}
.. вы можете видеть, что помощник создает ссылку Delete со всеми параметрами для маршрута, идентификатора и т. Д. Js просто выполняет часть 'Подтвердить', а затем передает крошечный фрагмент, который вы видите, созданный помощником.
[извините, если сэмплы не заполнены на 100% - мне пришлось удалить много вещей: например, у помощника и подключенных js есть много разных режимов, чтобы поддерживать ajax POST и т. Д.)