model

wrost 2012-10-03 09:16:21
这是model里边的内容,Required 我知道是 必须填的字段,如果不填,就会报错。
[Display(Name = "账号")] 是什么用呢?



public class LogOnModel
{
[Required]
[Display(Name = "账号")]
public string UserName { get; set; }

[Required]
[DataType(DataType.Password)]
[Display(Name = "密码")]
public string Password { get; set; }

[Display(Name = "登录信息")]
public bool RememberMe { get; set; }
}


...全文
108 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
wrost 2012-10-03
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 的回复:]

更像是给类或者类的成员贴的“标签”。这个标签是给动态加载或者调用它们的调用者准备的,让它们更好地理解这个对象或者字段的含义、用途。

和C/C++不同,C#或者说.NET中的对象或者函数,都是自描述的,也就是说,程序中包含了对程序自身的描述信息。你甚至不需要文档,就可以得知一个库有什么功能,这是C/C++做不到的。
[/Quote]

嗯,谢谢,我在实践中再去加深理解。
threenewbee 2012-10-03
  • 打赏
  • 举报
回复
更像是给类或者类的成员贴的“标签”。这个标签是给动态加载或者调用它们的调用者准备的,让它们更好地理解这个对象或者字段的含义、用途。

和C/C++不同,C#或者说.NET中的对象或者函数,都是自描述的,也就是说,程序中包含了对程序自身的描述信息。你甚至不需要文档,就可以得知一个库有什么功能,这是C/C++做不到的。
wrost 2012-10-03
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]



写在Arrtibute中的类型必须从Attribute类继承,显然DataType.Password应该是个枚举,所以不行。

[/Quote]

哦,就是把 DataType.Password类型数据 强制转换成 DataTypeAttribute类型数据。 他们2个名字都一样,所以开始让人很费解。

谢谢 :)
wrost 2012-10-03
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]

反射可以获得任意类型附加的attribute,这里指你的模型类。
[/Quote]

一个类可以有属性; 这里反射,相当于类“也有”这些附加的属性了,对吧?
threenewbee 2012-10-03
  • 打赏
  • 举报
回复
反射可以获得任意类型附加的attribute,这里指你的模型类。
wrost 2012-10-03
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

[]这种写法叫Attribute,供反射调用的时候查询。

写在Arrtibute中的类型必须从Attribute类继承,显然DataType.Password应该是个枚举,所以不行。

具体这些Attribute能做什么,取决于调用它的类,比如Model.xxxFor方法,它会去读取Model中对象的Attribute,并且产生对应的html和js代码。ASP.NET MVC是开放源代……
[/Quote]

这里的反射,是指反射到controller、view上边吗?
threenewbee 2012-10-03
  • 打赏
  • 举报
回复
[]这种写法叫Attribute,供反射调用的时候查询。

写在Arrtibute中的类型必须从Attribute类继承,显然DataType.Password应该是个枚举,所以不行。

具体这些Attribute能做什么,取决于调用它的类,比如Model.xxxFor方法,它会去读取Model中对象的Attribute,并且产生对应的html和js代码。ASP.NET MVC是开放源代码的,如果有兴趣,你可以用attribute类名作为条件在代码中搜索。
wrost 2012-10-03
  • 打赏
  • 举报
回复
还有就是 [DataType(DataType.Password)] ,是类型限制,[DataType.Password] 这样写行吗?

62,244

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧