<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                在本教程中,您將查看自動生成的`Details`和`Delete`方法。 # 查詢詳細信息和刪除記錄 #### 打開Movie控制器并查看Details方法。 ~~~ public ActionResult Details(int id = 0) { Movie movie = db.Movies.Find(id); if (movie == null) { return HttpNotFound(); } return View(movie); } ~~~ Code First 使得您可以輕松的使用`Find`方法來搜索數據。一個重要的安全功能內置到了方法中。方法首先驗證`Find`方法已經找到了一部電影,然后再執行其它代碼。例如,黑客可以通過更改*http://localhost:xxxx/Movies/Details/1*到*http://localhost:xxxx/Movies/Details/12345* (或某些其它值,不代表實際影片的值)從而使得鏈接URL 出現錯誤。如果您沒有檢測是否找到了Movie, null Movie會導致出現數據錯誤。 查看`Delete`和`DeleteConfirmed`方法。 ~~~ // GET: /Movies/Delete/5 public ActionResult Delete(int id = 0) { Movie movie = db.Movies.Find(id); if (movie == null) { return HttpNotFound(); } return View(movie); } // // POST: /Movies/Delete/5 [HttpPost, ActionName("Delete")] public ActionResult DeleteConfirmed(int id = 0) { Movie movie = db.Movies.Find(id); if (movie == null) { return HttpNotFound(); } db.Movies.Remove(movie); db.SaveChanges(); return RedirectToAction("Index"); } ~~~ 請注意,`Delete`的`HTTP Get` 方法不會刪除指定的電影,它返回刪除電影的視圖,您可以在此視圖中提交 (`HttpPost`) 刪除電影。如果使用GET 請求執行刪除操作(或者執行編輯操作,創建操作或者更改數據的任何其它操作) 開辟了一個安全漏洞。對此的詳細信息,請參閱斯蒂芬 · 瓦爾特的博客[ASP.NET MVC Tip #46 — Don't use Delete Links because they create Security Holes](http://stephenwalther.com/blog/archive/2009/01/21/asp.net-mvc-tip-46-ndash-donrsquot-use-delete-links-because.aspx). 將刪除數據的`HttpPost`方法命名為唯一簽名或名稱的 `DeleteConfirmed` 方法。這兩個方法的簽名如下所示: ~~~ // GET: /Movies/Delete/5 public ActionResult Delete(int id = 0) // // POST: /Movies/Delete/5 [HttpPost, ActionName("Delete")] public ActionResult DeleteConfirmed(int id = 0) ~~~ 公共語言運行時 (CLR)重載方法時,需要方法具有獨特唯一的簽名 (方法名稱相同但不同的參數列表)。但是,在這里您需要兩種刪除方法 — — 一個 GET方法和一個POST方法它們都具有相同的簽名。(他們都需要接受一個整數作為參數)。 要解決這一點,可以有幾種辦法。一是使用不同的方法名稱。這是框架代碼在前面的示例中所使用的方法。然而,這就帶來了一個小問題: ASP.NET 將部分的 URL按名稱映射到操作方法,如果您重命名了方法,通常Routing將無法找到該方法。解決方法是您在示例中看到的,將`ActionName("Delete")`屬性添加到`DeleteConfirmed` 方法。這會有效的執行Routing系統的Url映射,這樣一個包含*/Delete/*的 POST 請求的URL 將找到`DeleteConfirmed` 方法。 另一個常見的方法,來避免具有相同名稱和簽名的方法,是人為地改變POST 方法,包括未使用參數的簽名。例如,有些開發人員添加參數類型`[FormCollection](http://msdn.microsoft.com/en-us/library/system.web.mvc.formcollection.aspx)`,`[FormCollection](http://msdn.microsoft.com/en-us/library/system.web.mvc.formcollection.aspx)`是會傳遞給 POST 方法的,然后根本不使用此參數: ~~~ public ActionResult Delete(FormCollection fcNotUsed, int id = 0) { Movie movie = db.Movies.Find(id); if (movie == null) { return HttpNotFound(); } db.Movies.Remove(movie); db.SaveChanges(); return RedirectToAction("Index"); } ~~~ # 總結 您現在有一個完整的 ASP.NET MVC 應用程序并在本地的 DB 數據庫中存儲數據。您可以創建、 讀取、 更新、 刪除和搜索電影。 [![clip_image001](https://box.kancloud.cn/2016-08-08_57a8559d609a5.png "clip_image001")](http://images.cnitblog.com/blog/139239/201303/07143311-3778107dae3147e49cf3cbc2d4bda47c.png) 如果您想要部署應用程序,最好先在您本地的IIS 7 服務器上測試一下您的應用程序。您可以使用此[Web Platform Installer](http://www.microsoft.com/web/gallery/install.aspx?appsxml=&appid=ASPNET;) 鏈接啟用IIS服務器的 ASP.NET 應用程序的設置。請參閱下面的部署鏈接: · [Test your ASP.NET MVC or WebForms Application on IIS 7 in 30 seconds](http://blogs.msdn.com/b/rickandy/archive/2011/04/22/test-you-asp-net-mvc-or-webforms-application-on-iis-7-in-30-seconds.aspx) · [ASP.NET Deployment Content Map](http://msdn.microsoft.com/en-us/library/dd394698.aspx) · [Enabling IIS 7.x](http://blogs.msdn.com/b/rickandy/archive/2011/03/14/enabling-iis-7-x-on-windows-7-vista-sp1-windows-2008-windows-2008-r2.aspx) · [Web Application Projects Deployment](http://msdn.microsoft.com/en-us/library/dd394698.aspx) 現在鼓勵您開始學習中級內容 [Creating an Entity Framework Data Model for an ASP.NET MVC Application](http://www.asp.net/entity-framework/tutorials/creating-an-entity-framework-data-model-for-an-asp-net-mvc-application) 和 [MVC Music Store](http://www.asp.net/mvc/tutorials/mvc-music-store-part-1) 教程, 瀏覽[ASP.NET articles on MSDN](http://msdn.microsoft.com/en-us/library/gg416514(VS.98).aspx),的文章,再看看很多的視頻和資源:[http://asp.net/mvc](http://asp.net/mvc)來了解更多關于 ASP.NET MVC 的信息 ! [ASP.NET MVC forums](http://forums.asp.net/1146.aspx) 論壇是一個好地方,可以用來問您想要知道的問題。 ----------------------------------------------------------------------------------------------------------------------------------------------- 譯者注: 本系列共9篇文章,翻譯自Asp.Net MVC4 官方教程,由于本系列文章言簡意賅,篇幅適中,從一個示例開始講解,全文最終完成了一個管理影片的小系統,非常適合新手入門Asp.Net MVC4,并由此開始開發工作。9篇文章為: 1. Asp.Net MVC4 入門介紹 · 原文地址:[http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/intro-to-aspnet-mvc-4](http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/intro-to-aspnet-mvc-4) · 譯文地址:[http://www.cnblogs.com/powertoolsteam/archive/2012/11/01/2749906.html](http://www.cnblogs.com/powertoolsteam/archive/2012/11/01/2749906.html) 2. 添加一個控制器 · 原文地址:[http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-controller](http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-controller) · 譯文地址:[http://www.cnblogs.com/powertoolsteam/archive/2012/11/02/2751015.html](http://www.cnblogs.com/powertoolsteam/archive/2012/11/02/2751015.html) 3. 添加一個視圖 · 原文地址:[http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-view](http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-view) · 譯文地址:[http://www.cnblogs.com/powertoolsteam/archive/2012/11/06/2756711.html](http://www.cnblogs.com/powertoolsteam/archive/2012/11/06/2756711.html) 4. 添加一個模型 · 原文地址:[http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-model](http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-model) · 譯文地址:[http://www.cnblogs.com/powertoolsteam/archive/2012/12/17/2821495.html](http://www.cnblogs.com/powertoolsteam/archive/2012/12/17/2821495.html) 5. 從控制器訪問數據模型 · 原文地址:[http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/accessing-your-models-data-from-a-controller](http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/accessing-your-models-data-from-a-controller) · 譯文地址:[http://www.cnblogs.com/powertoolsteam/archive/2013/01/11/2855935.html](http://www.cnblogs.com/powertoolsteam/archive/2013/01/11/2855935.html) 6. 驗證編輯方法和編輯視圖 · 原文地址:[http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/examining-the-edit-methods-and-edit-view](http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/examining-the-edit-methods-and-edit-view) · 譯文地址:[http://www.cnblogs.com/powertoolsteam/archive/2013/01/24/2874622.html](http://www.cnblogs.com/powertoolsteam/archive/2013/01/24/2874622.html) 7. 給電影表和模型添加新字段 · 原文地址:[http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-new-field-to-the-movie-model-and-table](http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-new-field-to-the-movie-model-and-table) · 譯文地址:[http://www.cnblogs.com/powertoolsteam/archive/2013/02/26/2933105.html](http://www.cnblogs.com/powertoolsteam/archive/2013/02/26/2933105.html) 8. 給數據模型添加校驗器 · 原文地址:[http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-validation-to-the-model](http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-validation-to-the-model) · 譯文地址:[http://www.cnblogs.com/powertoolsteam/archive/2013/03/05/2944030.html?](http://www.cnblogs.com/powertoolsteam/archive/2013/03/05/2944030.html%20) 9. 查詢詳細信息和刪除記錄 · 原文地址:[http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/examining-the-details-and-delete-methods](http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/examining-the-details-and-delete-methods) · 譯文地址:[http://www.cnblogs.com/powertoolsteam/archive/2013/03/07/2948000.html](http://www.cnblogs.com/powertoolsteam/archive/2013/03/07/2948000.html)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看