我想在 Visual Studio 中找到对某个类的所有引用,但忽略了用 var 定义的实例。
有没有办法解决这个问题?
这里我使用 SHIFT+F12 来获取引用
结果是:
我得到我想要的
我需要设置执行顺序以进行验证,以便在第一次失败后停止验证。
但是,这不可用,所以我想知道还有其他方法可以做到这一点。
通常我会有这样的事情:
public Constructor(){
// Simple validation
RuleFor(x => x.Id).NotNull().NotEmpty();
// advanced validation
// item must exist in database
RuleFor(x => x.Id).Must(ExistsInDatabase);
// item must exist in database previously
// item must be some of the allowed names -- fetched from db
RuleFor(x => x.Id).Must(BeAReferenceInSomeTable);
private bool ExistsInDatabase(){}
private bool BeAReferenceInSomeTable(){}
}
Run Code Online (Sandbox Code Playgroud)
但是有了这个BeAReferenceInSomeTable可以在ExistsInDatabase之前执行。因此,当表中不存在ID时,BeAReferenceInSomeTable验证将引发异常,而不是由于ExistsInDatabase验证而使验证失败。
首先解决这个问题是这样的:
public Constructor(){
CascadeMode = FluentValidation.CascadeMode.StopOnFirstFailure;
// simple validation stays the same
...
// advanced validation
RuleFor(x => x.Id)
.Must(ExistsInDatabase)
.Must(BeAReferenceInSomeTable)
.When(x => !string.IsNullOrEmpty(x.Id) …Run Code Online (Sandbox Code Playgroud)