FluentValidation - Using a collection of validators validating the same class
Looking at the examples, it seems like the expected pattern for validating an object Foo
is to set all the validation rules in one AbstractValidator<Foo>
class.
However, I think it can be good to separate business logic of different validations to separate AbstractValidator<Foo>
classes, when the validations are more complex, especially when having to call external services for the validations.
I know I can implement different AbstractValidator<Foo>
and call them from a list/array,
but I am wondering, since this is a repeated pattern for me,
Is there any way to facilitate this?
I am looking for some class that get a list of AbstractValidator<Foo>
and aggregate the results, optionally also running them in parallel.
fluentvalidation
add a comment |
Looking at the examples, it seems like the expected pattern for validating an object Foo
is to set all the validation rules in one AbstractValidator<Foo>
class.
However, I think it can be good to separate business logic of different validations to separate AbstractValidator<Foo>
classes, when the validations are more complex, especially when having to call external services for the validations.
I know I can implement different AbstractValidator<Foo>
and call them from a list/array,
but I am wondering, since this is a repeated pattern for me,
Is there any way to facilitate this?
I am looking for some class that get a list of AbstractValidator<Foo>
and aggregate the results, optionally also running them in parallel.
fluentvalidation
Possible duplicate of FluentValidation multiple validators
– Wim Ombelets
Nov 16 at 13:21
@WimOmbelets I saw this post, in my case I am trying to call different validations forFOO
and not different validations of different properties ofFOO
– alex.dev
Nov 16 at 17:16
@alex.dev hi there. If you have a non-identical question to this one, please research it - maybe it's been answered here already - and if not then by all means post it. I'm sure there's a good chance you'll get it answered.
– Wim Ombelets
Nov 16 at 23:09
add a comment |
Looking at the examples, it seems like the expected pattern for validating an object Foo
is to set all the validation rules in one AbstractValidator<Foo>
class.
However, I think it can be good to separate business logic of different validations to separate AbstractValidator<Foo>
classes, when the validations are more complex, especially when having to call external services for the validations.
I know I can implement different AbstractValidator<Foo>
and call them from a list/array,
but I am wondering, since this is a repeated pattern for me,
Is there any way to facilitate this?
I am looking for some class that get a list of AbstractValidator<Foo>
and aggregate the results, optionally also running them in parallel.
fluentvalidation
Looking at the examples, it seems like the expected pattern for validating an object Foo
is to set all the validation rules in one AbstractValidator<Foo>
class.
However, I think it can be good to separate business logic of different validations to separate AbstractValidator<Foo>
classes, when the validations are more complex, especially when having to call external services for the validations.
I know I can implement different AbstractValidator<Foo>
and call them from a list/array,
but I am wondering, since this is a repeated pattern for me,
Is there any way to facilitate this?
I am looking for some class that get a list of AbstractValidator<Foo>
and aggregate the results, optionally also running them in parallel.
fluentvalidation
fluentvalidation
asked Nov 16 at 2:25
Ido
735
735
Possible duplicate of FluentValidation multiple validators
– Wim Ombelets
Nov 16 at 13:21
@WimOmbelets I saw this post, in my case I am trying to call different validations forFOO
and not different validations of different properties ofFOO
– alex.dev
Nov 16 at 17:16
@alex.dev hi there. If you have a non-identical question to this one, please research it - maybe it's been answered here already - and if not then by all means post it. I'm sure there's a good chance you'll get it answered.
– Wim Ombelets
Nov 16 at 23:09
add a comment |
Possible duplicate of FluentValidation multiple validators
– Wim Ombelets
Nov 16 at 13:21
@WimOmbelets I saw this post, in my case I am trying to call different validations forFOO
and not different validations of different properties ofFOO
– alex.dev
Nov 16 at 17:16
@alex.dev hi there. If you have a non-identical question to this one, please research it - maybe it's been answered here already - and if not then by all means post it. I'm sure there's a good chance you'll get it answered.
– Wim Ombelets
Nov 16 at 23:09
Possible duplicate of FluentValidation multiple validators
– Wim Ombelets
Nov 16 at 13:21
Possible duplicate of FluentValidation multiple validators
– Wim Ombelets
Nov 16 at 13:21
@WimOmbelets I saw this post, in my case I am trying to call different validations for
FOO
and not different validations of different properties of FOO
– alex.dev
Nov 16 at 17:16
@WimOmbelets I saw this post, in my case I am trying to call different validations for
FOO
and not different validations of different properties of FOO
– alex.dev
Nov 16 at 17:16
@alex.dev hi there. If you have a non-identical question to this one, please research it - maybe it's been answered here already - and if not then by all means post it. I'm sure there's a good chance you'll get it answered.
– Wim Ombelets
Nov 16 at 23:09
@alex.dev hi there. If you have a non-identical question to this one, please research it - maybe it's been answered here already - and if not then by all means post it. I'm sure there's a good chance you'll get it answered.
– Wim Ombelets
Nov 16 at 23:09
add a comment |
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53330571%2ffluentvalidation-using-a-collection-of-validators-validating-the-same-class%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53330571%2ffluentvalidation-using-a-collection-of-validators-validating-the-same-class%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Possible duplicate of FluentValidation multiple validators
– Wim Ombelets
Nov 16 at 13:21
@WimOmbelets I saw this post, in my case I am trying to call different validations for
FOO
and not different validations of different properties ofFOO
– alex.dev
Nov 16 at 17:16
@alex.dev hi there. If you have a non-identical question to this one, please research it - maybe it's been answered here already - and if not then by all means post it. I'm sure there's a good chance you'll get it answered.
– Wim Ombelets
Nov 16 at 23:09