c# asp mvc的错误信息应包含另一个变量/属性值。

3

我想创建一个包含另一个变量或属性值的错误消息。

我希望保持简单。目前这段代码显示了String.Format参数的错误。最好的方法是什么:

    public class MyClass
    {
        [RequiredIf("IsRequired", true, ErrorMessage=String.Format("The 'something' ({0}) is required because of: {1}", Something, CustomExplanation)]
        public string Something { get; set; }

        [Required]
        public bool IsRequired { get; set; }

        [Required]
        [StringLength(200, MinimumLength=20)]
        public string CustomExplanation { get; set; }
    }

我已经阅读了这个问题和答案:Data Annotation验证属性中的string.Format。虽然它可以使用,但或许还有其他方法...

1个回答

4

我建议您使用FluentValidator。这是一个非常好的库,可以帮助您实现目标。

链接 - http://fluentvalidation.codeplex.com/

您可以使用以下代码解决您的问题:

RuleFor(m => m.Something).When(m => m.IsRequired).WithMessage("Your message here.");

如果您有问题,请及时告知我。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接