流畅的验证。找不到扩展方法

时间:2011-10-21 09:35:30

标签: c# validation extension-methods fluentvalidation

我在项目中添加了FluentValidation程序集引用。在编写简单的验证器时,根本没有问题。当我尝试编写集合验证器时出现问题。 VisualStudio没有看到SetCollectionValidator扩展方法。它也不会出现在intellisense片段内。 我没有忘记加入using FlentValidation

修改

尽管没有intellisense暗示在SharpDevelop项目中构建相同的代码。

public class PostValidator : AbstractValidator<Entities.Post>
{
    public PostValidator()
    {
        RuleFor(p => p.Title).NotNull().NotEmpty();
        RuleFor(p => p.Content).NotNull().NotEmpty();
        RuleFor(p => p.Timestamp).NotNull();
    }
}
public class BlogValidator : AbstractValidator<Entities.Blog>
{
    public BlogValidator()
    {            
        RuleFor(b => b.Title).NotNull();
        RuleFor(b => b.Posts).SetCollectionValidator(new PostValidator());
    }
}

我做错了什么? 感谢。

1 个答案:

答案 0 :(得分:3)

确定。这是我的错。可能FluentValidation 2.x版本没有定义扩展方法。我的#develop项目包含FluentValidation 3.x版本,因此它构建完美。但是仍然没有在#develop和VS中显示该方法的智能化。