在.NET 4.5 / WebApi 2中,我可以创建一个约束并使用此代码添加它

// add constraint resolvers
var constraintResolver = new DefaultInlineConstraintResolver();
constraintResolver.ConstraintMap.Add("constraintName", typeof(MyCustomConstraint));

// routing
config.MapHttpAttributeRoutes(constraintResolver);


当前在我的Startup.cs文件中,我只有这个

public void Configure(IApplicationBuilder app, IServiceProvider serviceProvider)
    {
        // Enable Mvc for controllers
        app.UseMvc();

        // Enable all static file middleware (serving of static files and default files) EXCEPT directory browsing.
        app.UseFileServer();
    }


但是我不知道在哪里做这个,我是asp.net 5 / vNext。有人可以帮忙吗?我在所有控制器上使用属性路由

最佳答案

您可以在Startup类的ConfigureServices部分中注册。

    public virtual IServiceProvider ConfigureServices(IServiceCollection services)
    {

        services.Configure<RouteOptions>(options =>
                                        options
                                        .ConstraintMap
                                        .Add("constraintName", typeof(MyCustomConstraint)));
    }

09-25 22:05