亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ASP.NET MVC的準備工作有哪些

發布時間:2021-10-28 10:25:47 來源:億速云 閱讀:137 作者:柒染 欄目:編程語言

本篇文章給大家分享的是有關ASP.NET MVC的準備工作有哪些,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

配置環境

如果您還沒有安裝asp.net.mvc的話,請到這里下載安裝。

下載后,按提示安裝就可以了。

新建項目

安裝完asp.net.mvc后,在VS里新建一個項目,可以看到有一個“asp.net.mvc Web Application”的選項,選擇它,新建一個項目,并命名為“MVCDemo”。

建完項目后,可以看到默認情況下已經建立了很多文件夾,這里簡略說一下各個文件夾的作用。

Content——存放應用需要的一些資源文件,如圖片、CSS等。

Controllers——存放控制器類。

Models——存放業務模型組件。

Scripts——存放JavaScript腳本文件。

Views——存放視圖。

現在不了解一些概念沒關系,后續文章將慢慢解釋。

準備工作

新建完項目后,我們要做的準備工作就是建立Mock業務模型,這樣以后我們就直接使用這些“欺騙”式的業務模型進行業務處理,而將全部關注點放在asp.net.mvc的學習上。

首先在Models下新建三個文件夾,分別叫做Entities、Interfaces、MockModels,分別用來存放實體類、接口及Mock業務模型。

Entities下有兩個類:CategoryInfo和AnnounceInfo,分別是公告類別和公告的實體類。具體代碼如下:

CategoryInfo.cs:

using System;  using System.Collections.Generic;  using System.Linq;  using System.Web;   namespace MVCDemo.Models.Entities  {      ///      /// 分類實體類      ///      public class CategoryInfo      {          public int ID { get; set; }          public string Name { get; set; }      }  }

AnnounceInfo.cs:

using System;  using System.Collections.Generic;  using System.Linq;  using System.Web;   namespace MVCDemo.Models.Entities  {      ///      /// 公告實體類      ///      public class AnnounceInfo      {          public int ID { get; set; }          public string Title { get; set; }          public string Content { get; set; }          public int Category { get; set; }      }  }

接下來,我們將定義兩個接口,分別是公告類別服務和公告服務必須實現的接口。這兩個接口放在Interfaces下。

ICategoryService.cs:

using System;  using System.Collections.Generic;  using System.Linq;  using System.Text;  using MVCDemo.Models.Entities;   namespace MVCDemo.Models.Interfaces  {      ///      /// 分類服務組件接口      ///      public interface ICategoryService      {          ///          /// 添加分類          ///          ///          void Add(CategoryInfo category);           ///          /// 修改分類名稱          ///          ///          ///          void ChangeName(int id,string name);           ///          /// 刪除分類          ///          ///          void Remove(int id);           ///          /// 取得某個分類詳細信息          ///          ///          ///          CategoryInfo GetDetail(int id);           ///          /// 取得所有分類          ///          ///          List GetAll();      }  }

IAnnounceService.cs

using System;  using System.Collections.Generic;  using System.Linq;  using System.Text;  using MVCDemo.Models.Entities;   namespace MVCDemo.Models.Interfaces  {      ///      /// 公告服務組件接口      ///      public interface IAnnounceService      {          ///          /// 發布公告          ///          ///          void Release(AnnounceInfo announce);           ///          /// 修改公告信息          ///          ///          void Notify(AnnounceInfo announce);           ///          /// 刪除公告          ///          ///          void Remove(int id);           ///          /// 取得公告詳細內容          ///          ///          ///          AnnounceInfo GetDetail(int id);           ///          /// 取得某個分類下的所有公告          ///          ///          ///          List GetByCategory(CategoryInfo category);      }  }

然后,我們在MockModels下建立兩個Mock業務邏輯服務模型。注意它們要各自實現自己的接口。

MockCategoryService.cs:

using System;  using System.Collections.Generic;  using System.Linq;  using System.Web;  using MVCDemo.Models.Interfaces;  using MVCDemo.Models.Entities;   namespace MVCDemo.Models.MockModels  {      ///      /// “欺騙”服務組件,用于模擬分類的業務服務      ///      public class MockCategoryService : ICategoryService      {          ///          /// 添加分類          ///          ///          public void Add(CategoryInfo category)          {              return;          }           ///          /// 修改分類名稱          ///          ///          ///          public void ChangeName(int id, string name)          {              return;          }           ///          /// 刪除分類          ///          ///          public void Remove(int id)          {              return;          }           ///          /// 取得某個分類詳細信息          ///          ///          ///          public CategoryInfo GetDetail(int id)          {              return new CategoryInfo              {                  ID = id,                  Name = "***通告",              };          }           ///          /// 取得所有分類          ///          ///          public List GetAll()          {              List categories = new List();              for (int i = 1; i <= 5; i++)              {                  CategoryInfo category = new CategoryInfo                  {                      ID = i,                      Name="通告類別"+i,                  };                   categories.Add(category);              }               return categories;          }      }  }

MockAnnounceService.cs

using System;  using System.Collections.Generic;  using System.Linq;  using System.Web;  using MVCDemo.Models.Interfaces;  using MVCDemo.Models.Entities;   namespace MVCDemo.Models.MockModels  {      ///      /// “欺騙”服務組件,用于模擬公告的業務服務      ///      public class MockAnnounceService : IAnnounceService      {          ///          /// 發布公告          ///          ///          public void Release(AnnounceInfo announce)          {              throw new Exception("發布公告失敗了!原因?沒有原因!我是業務組件,我說失敗就失敗!");              return;          }           ///          /// 修改公告信息          ///          ///          public void Notify(AnnounceInfo announce)          {              return;          }           ///          /// 刪除公告          ///          ///          public void Remove(int id)          {              return;          }           ///          /// 取得公告詳細內容          ///          ///          ///          public AnnounceInfo GetDetail(int id)          {              return new AnnounceInfo              {                  ID = id,                  Title = "第" + id + "則公告",                  Content = "全體同學明早九點集體做俯臥撐!",              };          }           ///          /// 取得某個分類下的所有公告          ///          ///          ///          public List GetByCategory(CategoryInfo category)          {              List announces = new List();              for (int i = 1; i <= 10; i++)              {                  AnnounceInfo announce = new AnnounceInfo                  {                      ID = i,                      Title = category.Name+ "的第" + i + "則公告",                      Content = "全體同學明早九點集體做俯臥撐!",                  };                   announces.Add(announce);              }               return announces;          }      }  }

可以看到,這兩個類并沒有訪問數據庫,也沒有實現真正的業務邏輯,而不過是“捏造”了一些數據騙騙我們的表示層而已。

***,我們要建立一個生成業務邏輯模型的生成器,用來實現表示層和業務邏輯層的解耦。當然,為了簡化復雜度,這里沒有使用依賴注入機制。下面是我們生成器的代碼,這個類是直接放在Models下的。

ServiceBuilder.cs:

using System;  using System.Collections.Generic;  using System.Linq;  using System.Web;  using MVCDemo.Models.Interfaces;  using MVCDemo.Models.MockModels;   namespace MVCDemo.Models  {      ///      /// 服務組件生成類,用于生成業務服務組件      ///      public sealed class ServiceBuilder      {          ///          /// 創建分類服務組件          ///          /// 分類服務組件         public static ICategoryService BuildCategoryService()          {              return new MockCategoryService();          }           ///          /// 創建公告服務組件          ///          /// 公告服務組件         public static IAnnounceService BuildAnnounceService()          {              return new MockAnnounceService();          }      }  }

OK,到這里,我們的準備工作就做完了。完成這些后,系統的目錄結構如下圖所示:

ASP.NET MVC的準備工作有哪些

以上就是ASP.NET MVC的準備工作有哪些,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

佛山市| 诸暨市| 运城市| 汾阳市| 江华| 凤凰县| 财经| 繁昌县| 遵义县| 天津市| 迁安市| 元氏县| 来安县| 曲靖市| 贡山| 济阳县| 岑溪市| 哈密市| 龙岩市| 大港区| 红桥区| 五常市| 阿城市| 萝北县| 曲沃县| 夏津县| 海口市| 孟津县| 吴忠市| 普格县| 山东省| 长海县| 买车| 宣汉县| 高安市| 北票市| 中江县| 泰和县| 开远市| 龙泉市| 宜良县|