Я в настоящее время озадачен, почему мой метод не работает.Я установил на нем точку останова, потому что подозреваю, что где-то произошел сбой.
Вот мое объяснение:
Я только что запустил новое приложение ASP.NET MVC 2.Я подключил свою домашнюю страницу / страницу указателя к новому строго типизированному представлению, которое я назвал «Категории / Список».Все отображается нормально - категории извлекаются из моей модели Entity Data и помещаются на страницу.Я удалил ссылку «Подробности», которая автоматически создается вместе с представлением.
После этого я добавил строго типизированный вид «Удалить» к категориям / «Удалить».В моем CategoryController у меня есть следующий код (который работает)
<%: Html.ActionLink("Delete", "DeleteCategory", new { id=item.CategoryID })%>
to:
/// <summary>
/// Get rid of a Category
/// </summary>
/// <returns>Redirect to ~/Categories/Delete</returns>
public ActionResult DeleteCategory(int id)
{
ViewData.Model = (from c in DataContext.Categories where c.CategoryID == id select c).FirstOrDefault();
return View("Delete");
}
My Delete View выглядит так:
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<PracticeApp.Models.Category>" %>
Delete
<h2>Delete</h2>
<h3>Are you sure you want to delete this?</h3>
<fieldset>
<legend>Fields</legend>
<div class="display-label">CategoryID</div>
<div class="display-field"><%: Model.CategoryID %></div>
<div class="display-label">Category1</div>
<div class="display-field"><%: Model.Category1 %></div>
</fieldset>
<% using (Html.BeginForm()) { %>
<p>
<input type="submit" value="Delete" /> |
<%: Html.ActionLink("Back to List", "List") %>
</p>
<% } %>
ОК.Все это покажется знакомым экспертам MVC.Имейте в виду, я только начал с MVC, и у меня нет очень хороших знаний с Linq Either, поэтому я ожидаю некоторого пламени из моего следующего кода (который даже не работает - цель вопроса - я не знаю, почему этоне запускается!)
Это в моих категорияхКонтроллер
[HttpPost]
public ActionResult Delete(Models.Category category)
{
foreach (Models.Category c in DataContext.Categories)
{
if (c.CategoryID == category.CategoryID)
{
DataContext.Categories.DeleteObject(c);
}
}
DataContext.SaveChanges();
return RedirectToAction("List", "List", "Categories");
}
Есть идеи, почему мой код отказывается запускаться?Я остановился на первой скобке.Точка останова никогда не достигается.