建立新聞首頁,用來顯示新聞清單。
在Views/News目錄下,單擊右鍵,選擇Add->View,修改相關配置如下圖所示

NewsEdit View
NewsDelete View
在生成的HTML代碼中,進行相關展示方面的修改。主要代碼如下:
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<h2>新聞編輯-</h2>
<% using (Html.BeginForm()) {%>
<%: Html.ValidationSummary(true) %>
<fieldset>
<legend>Fields</legend>
<div class="editor-label" style="display:none;">
<%: Html.LabelFor(model => model.Id) %>
</div>
<div class="editor-field" style="display:none;">
<%: Html.TextBoxFor(model => model.Id)%>
<%: Html.ValidationMessageFor(model => model.Id) %>
<div class="editor-label">
<%: Html.LabelFor(model => model.Title) %>
<div class="editor-field">
<%: Html.TextBoxFor(model => model.Title) %>
<%: Html.ValidationMessageFor(model => model.Title) %>
<%: Html.LabelFor(model => model.CreateTime)%>
<%: Html.TextBoxFor(model => model.CreateTime,new { @class = "date" }) %>
<%: Html.ValidationMessageFor(model => model.CreateTime) %>
<%: Html.LabelFor(model => model.Content) %>
<%: Html.EditorFor(model => model.Content) %>
<%: Html.ValidationMessageFor(model => model.Content) %>
<p>
<input type="submit" value="Save" />
</p>
</fieldset>
<% } %>
<div>
<%: Html.ActionLink("Back to List", "Index") %>
</div>
</asp:Content>
新聞編輯頁面HTML代碼。
隐藏style="display:none;" 新聞編号Id
删除頁面NewsDelete.aspx主要代碼如下:
<h2>删除新聞</h2>
<h3>确認要删除此條記錄嗎?</h3>
<fieldset>
<legend>Fields</legend>
<div class="display-label">編号:</div>
<div class="display-field"><%: Model.Id %></div>
<div class="display-label">标題:</div>
<div class="display-field"><%: Model.Title %></div>
<div class="display-label">建立時間:</div>
<div class="display-field"><%: String.Format("{0:g}", Model.CreateTime) %></div>
<div class="display-label">新聞内容</div>
<div class="display-field"><%: Model.Content %></div>
</fieldset>
<% using (Html.BeginForm()) { %>
<p>
<input type="submit" value="Delete" /> |
<%: Html.ActionLink("Back to List", "Index") %>
</p>
在Controllers/News檔案下
修改NewsEdit.aspx頁面所對應的的Action方法NewsEdit,以使NewsEdit.aspx頁面初始化資料,此處未讀讀取資料庫,而是從靜态變臉集合中讀取相對應的記錄。
NewsEdit.asp所對應的 Action 代碼如下:
//編輯頁面初始化方法
// GET: /News/Edit/5
public ActionResult NewsEdit(int id)
{
THelperMVC.Models.News.NewsModel news = newsList[id];
return View(news);
}
[HttpPost]
//點選編輯按鈕時,觸發的方法
public ActionResult Edit(int id, FormCollection collection)
try
{
// TODO: 添加更新業務邏輯
return RedirectToAction("Index");
}
catch
return View();
NewsDelete.Aspx所對應的Action方法,如下
// GET: /News/Delete/5
/// <summary>
/// 頁面初始化時,觸發的方法
/// </summary>
/// <param name="id">URL中的參數Id值</param>
/// <returns>新聞實體對象</returns>
public ActionResult NewsDelete(int id)
// POST: /News/Delete/5
[HttpPost]
//點選【删除】按鈕時觸發的方法
public ActionResult Delete(int id, FormCollection collection)
// TODO: 添加删除業務邏輯
根據URL傳過來的參數(即新聞編号Id),從全局靜态變量中尋找NewsModel實體,進而初始化新聞删除頁面。
最後修改新聞頁Index.aspx中的Edit連接配接,如下圖所示:
此時,點選新聞頁Index.aspx超連結,會尋找NewsController檔案夾下的NewsEdit方法或者NewsDelete方法,進而初始化Views/News/NewsEdit.aspx頁面或者Views/News/NewsDelete.aspx頁面,
按下Ctrl+F5運作程式,如下圖所示:
點選上圖中的【News】超連結,跳轉到新聞清單頁面,如下圖所示:
點選【Edit】超連結,會跳轉到相應記錄的編輯頁面,如下圖所示:
點選【Delete】超連結,會跳轉到相應記錄的删除頁面,如下圖所示:
至此,使用Asp,net MVC2.0架構完成了簡單的增查改删操作。接下來,在時間允許的情況下,會對MVC2.0架構原理進行一些總結,還望園子裡德朋友指點。
版權
作者:靈動生活 郝憲玮
如果你認為此文章有用,請點選底端的【推薦】讓其他人也了解此文章,
本文版權歸作者和部落格園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接配接,否則保留追究法律責任的權利。