在Models目录下面的Album.cs文件中,Album类是用作描述相册实体的。
该类很简单,都是些属性而已。但是这些属性上面加了些特性,有些我还是第一次遇见。
该类添加完注释后,代码如下:
1 /// <summary>
2 /// 相册
3 /// </summary>
4 [Bind(Exclude = "AlbumId")]
5 public class Album
6 {
7 /// <summary>
8 /// 相册编号
9 /// ScaffoldColumn 说明:基架是基于数据库架构生成网页模板的机制。
10 /// ASP.NET 动态数据使用基架生成基于 Web 的 UI,
11 /// 用户可以通过这种 UI 查看和更新数据库。
12 /// 此类使用 Scaffold 属性在动态数据网站中启用基架。
13 /// </summary>
14 [ScaffoldColumn(false)]
15 public int AlbumId { get; set; }
16
17 /// <summary>
18 /// 类型编号
19 /// DisplayName 说明:显示名
20 /// </summary>
21 [DisplayName("Genre")]
22 public int GenreId { get; set; }
23
24 /// <summary>
25 /// 艺术家编号
26 /// </summary>
27 [DisplayName("Artist")]
28 public int ArtistId { get; set; }
29
30 /// <summary>
31 /// 标题
32 /// Required 说明:必填字段,ErrorMessage是错误消息
33 /// StringLength 说明:最大填入字符串长度
34 /// </summary>
35 [Required(ErrorMessage = "An Album Title is required")]
36 [StringLength(160)]
37 public string Title { get; set; }
38
39 /// <summary>
40 /// 价格
41 /// Range 说明:取值范围(介于0.01-100.00之间)
42 /// </summary>
43 [Required(ErrorMessage = "Price is required")]
44 [Range(0.01, 100.00,
45 ErrorMessage = "Price must be between 0.01 and 100.00")]
46 public decimal Price { get; set; }
47
48 /// <summary>
49 /// 相册的艺术家图片地址
50 /// </summary>
51 [DisplayName("Album Art URL")]
52 [StringLength(1024)]
53 public string AlbumArtUrl { get; set; }
54
55 /// <summary>
56 /// 类型(虚属性)
57 /// 用于描述相册实体与类型之间的关系
58 /// </summary>
59 public virtual Genre Genre { get; set; }
60 /// <summary>
61 /// 艺术家(虚属性)
62 /// 用于描述相册与艺术家之间的关系
63 /// </summary>
64 public virtual Artist Artist { get; set; }
65 /// <summary>
66 /// 订单详情(虚属性)
67 /// 用于描述相册与订单详情之间的关系
68 /// </summary>
69 public virtual List<OrderDetail> OrderDetails { get; set; }
70 }