Проверьте страницу, на которую я ссылаюсь в следующем сообщении.
По сути, вы пишете свою собственную Dataannotation, так что вы сможете изменить ее, чтобы увидеть, содержит ли пароль имя пользователя вместо того, чтобы совпадать с именем пользователя.
Напротив [сравнить ("")] аннотацию данных в .net?
Я только что понял, что вы также опубликовали этот вопрос.
Таким образом, вы должны изменить имя класса в посте на что-то вроде "CanNotContainAttribute"
а затем также измените на то же имя для конструктора.
В методе IsValid вы должны проверить, содержит ли одна строка другую, т. Е. Если пароль содержит имя пользователя, где здесь имя пользователя называется OtherProperty, если аннотация применяется к свойству пароля в файле модели.
И затем вы применяете аннотацию к свойству Password, выполнив:
[CanNotContain("UserName")]
public string Password { get; set; }
Исходное сообщение в блоге, на которое я ссылаюсь: http://www.devtrends.co.uk/blog/the-complete-guide-to-validation-in-asp.net-mvc-3-part-2