0

以下是正在比较的两个属性:

[Required]
[Display(Name = "Current Password")]
public string Current { get; set; }

[Required]
[Compare("New")]
[Display(Name = "New Password")]
public string New { get; set; }

验证消息如下所示:

'Confirm Password' and 'New' do not match.

如何获取此属性以使用属性的显示名称New

4

1 回答 1

1

花了一段时间才弄清楚这一点,但显然我使用了错误的Compare属性。

我最初的声明是使用在 中Compare找到的 System.ComponentModel.DataAnnotations,而正确的声明是在 中定义的System.Web.Mvc

DataAnnotations.Compare不具有相同的功能是非常愚蠢的,但是再次开始有两个属性Compare是非常愚蠢的。

这是正确的实现:

[Required]
[Display(Name = "New Password")]
public string New { get; set; }

[System.Web.Mvc.Compare("New")]
[Display(Name = "Confirm Password")]
public string ConfirmPassword { get; set; }

希望这对其他人有所帮助,因为它确实让我非常沮丧。这就是生活。

于 2013-08-27T18:52:36.793 回答