4

我在我的项目中添加了 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());
    }
}

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

4

1 回答 1

3

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

于 2011-10-22T11:14:49.393 回答