學習ASP.NET MVC,如果你是開發ASP.NET MVC項目的,也許你去為項目添加前ASP.NET項目的APP_Code目錄,在這裡創建與添加的Class類,也許你無法在MVC項目所引用。 那這樣說,是不是一沒有作用了呢?非也。 從下麵一步一步來學習。 創建一個model,名稱:Machine ...
學習ASP.NET MVC,如果你是開發ASP.NET MVC項目的,也許你去為項目添加前ASP.NET項目的APP_Code目錄,在這裡創建與添加的Class類,也許你無法在MVC項目所引用。
那這樣說,是不是一沒有作用了呢?非也。
從下麵一步一步來學習。
創建一個model,名稱:Machine
using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace Insus.NET.Models { public class Machine { public int Key { get; set; } public string ModelNumber { get; set; } public string Brand { get; set; } public DateTime ManufactureDate { get; set; } } }Source Code
創建一個Entity,名稱為MachineEntity:
using System; using System.Collections.Generic; using System.Linq; using System.Web; using Insus.NET.Models; namespace Insus.NET.Entities { public class MachineEntity { public IEnumerable<Machine> Machines() { return new List<Machine>() { { new Machine() { Key =1, ModelNumber ="TC03Q", Brand ="QT", ManufactureDate = Convert.ToDateTime("2008/12/31")} }, { new Machine() { Key =2, ModelNumber ="MH26U", Brand ="HW", ManufactureDate = Convert.ToDateTime("2012/03/09")} }, { new Machine() { Key =3, ModelNumber ="DW569", Brand ="XM", ManufactureDate = Convert.ToDateTime("2015/07/25")} } }; } } }Source Code
創建一個控制器,名稱為MachineController:
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; namespace Insus.NET.Controllers { public class MachineController : Controller { // GET: Machine public ActionResult MachineList() { return View(); } } }Source Code
最後創建視圖顯示Entity的數據:
上面有一行代碼#17:
(new MachineEntity()).
如果一個頁面中,多處引用此類,可以把它移至一個語法塊中去:
@{......}
是時候運行程式,看看效果:
已經能正常顯示數據了,現在,我們需要對時間進行格式化,只想顯示日期,去除時間部分:
可以在視圖中寫一個helper方法:
再次顯示:
程式中,如果這個公共helper方法,我們可以放在一個地方法,當項目中其它視圖需要使用時,我們就不必再重新寫一遍或者拷貝和粘帖了。
在ASP.NET MVCA項目中,把APP_Code目錄調出來:
然後在這個目錄添加一個Helper cshtml文檔:
這個Razor語法的Helper文檔,名字使用LeoYang.cshtml
然後修改一個視圖的語法,使用到這個公共的Helper:
這樣說明,ASP.NET MVC項目中的APP_Code目錄,是可以放置一些公共的Helper相關。
完畢。