Asp.net mvc FluentValidation将正则表达式验证器集中在验证器扩展中

Asp.net mvc FluentValidation将正则表达式验证器集中在验证器扩展中,asp.net-mvc,validation,fluentvalidation,Asp.net Mvc,Validation,Fluentvalidation,我有一个验证规则,它对于我想集中处理的许多属性都是通用的,但是当NotEmpty()规则和类似的规则工作正常时,匹配(…)和其他仅字符串的验证规则不会编译 没问题: public static IRuleBuilderOptions<T, TProperty> MustNotContainHtml<T, TProperty>(this IRuleBuilderOptions<T, TProperty> ruleBuilder) {

我有一个验证规则,它对于我想集中处理的许多属性都是通用的,但是当
NotEmpty()
规则和类似的规则工作正常时,
匹配(…)
和其他仅字符串的验证规则不会编译

没问题:

    public static IRuleBuilderOptions<T, TProperty> MustNotContainHtml<T, TProperty>(this IRuleBuilderOptions<T, TProperty> ruleBuilder)       
    {
        return ruleBuilder.NotEmpty().WithMessage("Some message.");
    }

哪些规则生成器签名可用于仅字符串选项?

解决方案是重用实际的
RegularExpressionValidator

    public static IRuleBuilderOptions<T, string> MustNotContainHtml<T>(this IRuleBuilder<T, string> ruleBuilder)
    {
        return ruleBuilder.SetValidator(new RegularExpressionValidator("<[a-z!/?]|&#")).WithMessage("Some custom message.");
    }
公共静态IRuleBuilder选项不得包含HTML(此IRuleBuilder规则生成器)
{

return ruleBuilder.SetValidator(新的RegularExpressionValidator(“您也可以接受自己的答案,这有助于我们确定需要帮助的问题:)我知道,但仍需要等到明天才能允许;-)
    public static IRuleBuilderOptions<T, string> MustNotContainHtml<T>(this IRuleBuilder<T, string> ruleBuilder)
    {
        return ruleBuilder.SetValidator(new RegularExpressionValidator("<[a-z!/?]|&#")).WithMessage("Some custom message.");
    }