Model - 資料模型

Model - 資料模型

今天為大家介紹,ASP.Net MVC Model 的建立,

Model 的建立方式有三種:

第一種 Database First 是先建立好資料庫後,加入 「ADO.NET 實體資料模型」。

第二種 Model First 是利用Entity Designer,先建立Entity Data Model。

第三種 Code First 是手動key程式碼產生。

 

當使用Database FirstModel First 建立Model 完成後,可以使用MetaDataType來做額外設定,

請參考:

System.ComponentModel.DataAnnotations 命名空間

MetadataTypeAttribute 類別

 

在方案總管中,Models資料夾下新增「Partitals」資料夾中,建立一類別。


image

 

在程式碼中 要引用的命名空間

image

using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;

namespace MvcApplication3.Models
{
    [MetadataType(typeof(tblEmployeeMetadata))]    
    public partial class tblEmployee
    {
        public class tblEmployeeMetadata
        {
            [Display(Name = "編號")]
            public int id { get; set; }
            [Display(Name = "洋名")]
            public string ename { get; set; }
            [Display(Name = "電話號碼")]
            public string phonenum { get; set; }
            [Display(Name = "電子信箱")]
            public string email { get; set; }
            [Display(Name = "住址")]
            public string address { get; set; }
            [Display(Name = "出生年月日")]
            [DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:yyyy/MM/dd}")]
            public Nullable<System.DateTime> birthday { get; set; }
            [Display(Name = "新增人員")]
            public Nullable<int> createby { get; set; }
            [Display(Name = "新增日期")]
            [DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:yyyy/MM/dd}")]
            public Nullable<System.DateTime> createdate { get; set; }
            [Display(Name = "修改人員")]
            public Nullable<int> modifyby { get; set; }
            [Display(Name = "修改日期")]
            [DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:yyyy/MM/dd}")]
            public Nullable<System.DateTime> modifydate { get; set; }
            [Display(Name = "是否刪除")]
            public string delmark { get; set; }
            [Display(Name = "帳號")]
            public string account { get; set; }
            [Display(Name = "密碼")]
            public string password { get; set; }
        }
    }
}

出生年月日在資料庫型態若是「DateTime」,想要在View的呈現 西元年/月/日 的話,要把格式設成如下:

image

這樣的話,就會呈現 比如:「2013/05/16」 的資料了。

 

後續再新增小弟我的學習之路…敬請期待 ^_^