Giter VIP home page Giter VIP logo

Comments (2)

AKomyshan avatar AKomyshan commented on June 24, 2024

Hi,

I checked this behavior.

Make sure that you pass the type from the Assembly that contains inheritors of IValidator<T> (AbstractValidator<TCommand>) as first parameter.

More info: https://github.com/JamesRandall/FunctionMonkey/blob/master/Source/FunctionMonkey.FluentValidation/IServiceCollectionExtensions.cs

from functionmonkey.

peteharrison avatar peteharrison commented on June 24, 2024

Yes I had a look at this and I copied what James had done in this article https://dev.to/jamesrandall/elegant-azure-functions-development-in-c-with-function-monkey-1ea7 by calling .AddValidatorsFromAssemblyContaining() and it didn't work?

Can you give me an example?

my validator class looks like:

class LoginCommandValidator : AbstractValidator
{
public LoginCommandValidator()
{
RuleFor(x => x.Credentials).NotNull().NotEmpty();
RuleFor(x => x.Credentials.Identifier).NotEmpty().NotNull();
RuleFor(x => x.Credentials.Password).NotEmpty().NotNull();
RuleFor(x => x.Credentials.AppId).NotEmpty().NotNull();
}
}

and my function app configuration looks like

public class FunctionAppConfiguration : IFunctionAppConfiguration
{
public void Build(IFunctionHostBuilder builder)
{
builder
.Setup((serviceCollection, commandRegistry) =>
{
string SqlConnection = Environment.GetEnvironmentVariable("AuthDBConnectionString");

                serviceCollection.AddDbContext<AuthDBContext>(
                    options => options.UseSqlServer(SqlConnection))
                .AddTransient<IAuthRepository, AuthRepository>()
                .AddValidatorsFromAssemblyContaining<FunctionAppConfiguration>();

                commandRegistry.Discover<FunctionAppConfiguration>();
                
            })
            .DefaultHttpResponseHandler<DefaultResponseHandler>()
            .AddFluentValidation()
            .Functions(functions => functions
                .HttpRoute("v1/Login", route => route
                    .HttpFunction<Login>(HttpMethod.Post)
                )
            );
    }
}

from functionmonkey.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.