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

编辑

尽管没有智能提示,但在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());
    }
}


我究竟做错了什么?
谢谢。

最佳答案

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

09-06 00:00