public void Configuration(IAppBuilder app) { var config = new System.Web.Http.HttpConfiguration(); //ConfigureAuth(app); ConfigureAuth(app); }
public void Configuration(IAppBuilder app) { var config = new System.Web.Http.HttpConfiguration(); WebApiConfig.Register(config); app.UseWebApi(config); //<-- THIS WAS MISSING }
public AppCore.IOC.IContainer ActiveWebApi(System.Web.Http.HttpConfiguration httpConfig, System.Reflection.Assembly[] webApiAssemblies) { _container = new DryContainer().WithWebApi(httpConfig, webApiAssemblies); _container.RegisterInstance <AppCore.IOC.IContainer>(new Container(_container), reuse: Reuse.Singleton); Container = _container.Resolve <AppCore.IOC.IContainer>(); return(Container); }
public static ODataQueryOptions CreateOptionsFromQueryString(this ODataQueryContext context, IDictionary <string, string> queryString) { //Create request var url = "http://autoPocoInternalOdata.com/site?"; foreach (var param in queryString) { url += param.Key + "=" + param.Value + "&"; } url = url.Trim('?').Trim('&'); Uri uri = new Uri(url); var config = new System.Web.Http.HttpConfiguration(); config.EnableDependencyInjection(); config.Count().Filter().OrderBy().Expand().Select().MaxTop(1000); var request = new HttpRequestMessage { RequestUri = uri }; request.SetConfiguration(config); return(new ODataQueryOptions(context, request)); }
public void ConfigureShouldAddRouteHttpConfiguration() { var config = new System.Web.Http.HttpConfiguration(); WebApiProfilerSettings.Configure(config); Assert.IsTrue(config.Routes.ContainsKey("Profiler"), "There should be a route named Profiler in the collection"); Assert.AreEqual<string>("profiler/results/{id}", config.Routes["Profiler"].RouteTemplate, "Route parameter is invalid"); }
public void Configuration(IAppBuilder app) { System.Web.Http.HttpConfiguration config = new System.Web.Http.HttpConfiguration(); app.UseCors(Microsoft.Owin.Cors.CorsOptions.AllowAll); ConfigureAuth(app); WebApiConfig.Register(config); app.UseWebApi(config); }
public void Setup() { //GlobalConfiguration.Configure(WebApiConfig.Register); config = new System.Web.Http.HttpConfiguration(); config.EnsureInitialized(); }
public IEnumerable <FilterInfo> GetFilters(System.Web.Http.HttpConfiguration configuration, System.Web.Http.Controllers.HttpActionDescriptor actionDescriptor) { var deoFilters = _container.ResolveAll <IApiMendeoFilter>(); foreach (var f in deoFilters) { yield return(new FilterInfo(f, FilterScope.Global)); } }
public override IModelBinder GetBinder(System.Web.Http.HttpConfiguration configuration, Type modelType) { if (!modelType.IsArray) { return(null); } Type elementType = modelType.GetElementType(); return((IModelBinder)Activator.CreateInstance(typeof(MyArrayModelBinder <>).MakeGenericType(new Type[] { elementType }))); }
public void RegistrationWithCustomOptions() { // Arrange var options = TestHelper.MockOptions().UseHungarianNotation(); var httpConfig = new System.Web.Http.HttpConfiguration(); DataTables.AspNet.WebApi2.Configuration.RegisterDataTables(httpConfig, options); // Assert Assert.Equal(options, DataTables.AspNet.WebApi2.Configuration.Options); }
public static ODataConventionModelBuilder ConfigureConventionBuilder() { var config = new System.Web.Http.HttpConfiguration(); config.EnableDependencyInjection(); config.Count().Filter().OrderBy().Expand().Select().MaxTop(1000); var modelBuilder = new ODataConventionModelBuilder(config, true); return(modelBuilder); }
public void TestInitialize() { httpRequestMessage = new HttpRequestMessage { Method = HttpMethod.Get }; var config = new System.Web.Http.HttpConfiguration(); config.EnableDependencyInjection(); httpRequestMessage.SetConfiguration(config); }
public new IEnumerable <FilterInfo> GetFilters(System.Web.Http.HttpConfiguration configuration, System.Web.Http.Controllers.HttpActionDescriptor actionDescriptor) { var filters = base.GetFilters(configuration, actionDescriptor); foreach (var actionFilter in filters) { _kernel.InjectProperties(actionFilter); } return(filters); }
internal static void ConfigureDependencyResolver(System.Web.Http.HttpConfiguration config) { var builder = new ContainerBuilder(); builder.RegisterApiControllers(Assembly.GetExecutingAssembly()); builder.RegisterType <RecipeManagerUow>().As <IRecipeManagerUow>(); var container = builder.Build(); config.DependencyResolver = new AutofacWebApiDependencyResolver(container); }
public ExceptionProcessingHandlerTests() { _settingsManager = ScriptSettingsManager.Instance; _traceWriter = new TestTraceWriter(System.Diagnostics.TraceLevel.Verbose); Mock <IDependencyResolver> mockResolver = new Mock <IDependencyResolver>(); mockResolver.Setup(p => p.GetService(typeof(TraceWriter))).Returns(_traceWriter); _config = new System.Web.Http.HttpConfiguration(); _config.DependencyResolver = mockResolver.Object; }
public static void RegisterContainer(System.Web.Http.HttpConfiguration configuration) { var builder = new ContainerBuilder(); builder.RegisterControllers(typeof(MvcApplication).Assembly); builder.RegisterApiControllers(typeof(MvcApplication).Assembly); builder.RegisterType <InMemoryTasks>().As <IPlannerTasks>().SingleInstance(); var container = builder.Build(); DependencyResolver.SetResolver(new AutofacDependencyResolver(container)); configuration.DependencyResolver = new AutofacWebApiDependencyResolver(container); }
public void RegistrationWithParseAditionalParameters() { // Arrange var httpConfig = new System.Web.Http.HttpConfiguration(); DataTables.AspNet.WebApi2.Configuration.RegisterDataTables(httpConfig, TestHelper.ParseAdditionalParameters, true); var modelBinder = System.Web.Http.GlobalConfiguration.Configuration.Services.GetServices(typeof(IModelBinder)).Cast <IModelBinder>().FirstOrDefault() as ModelBinder; // Assert Assert.Equal(true, DataTables.AspNet.WebApi2.Configuration.Options.IsRequestAdditionalParametersEnabled); Assert.Equal(true, DataTables.AspNet.WebApi2.Configuration.Options.IsResponseAdditionalParametersEnabled); Assert.NotNull(modelBinder.ParseAdditionalParameters); }
private System.Web.Http.Controllers.HttpControllerContext CreateControllerContext() { System.Web.Http.HttpConfiguration config = new System.Web.Http.HttpConfiguration(); System.Web.Http.Routing.IHttpRouteData route = new System.Web.Http.Routing.HttpRouteData(new System.Web.Http.Routing.HttpRoute()); System.Net.Http.HttpRequestMessage req = new System.Net.Http.HttpRequestMessage(); req.Properties[System.Web.Http.Hosting.HttpPropertyKeys.HttpConfigurationKey] = config; req.Properties[System.Web.Http.Hosting.HttpPropertyKeys.HttpRouteDataKey] = route; System.Web.Http.Controllers.HttpControllerContext context = new System.Web.Http.Controllers.HttpControllerContext(config, route, req); context.ControllerDescriptor = new System.Web.Http.Controllers.HttpControllerDescriptor(config, "MockController", typeof(System.Web.Http.ApiController)); return(context); }
public void RegistrationWithCustomBinder() { // Arrange var requestBinder = TestHelper.MockModelBinder(); var httpConfig = new System.Web.Http.HttpConfiguration(); DataTables.AspNet.WebApi2.Configuration.RegisterDataTables(httpConfig, requestBinder); var modelBinder = System.Web.Http.GlobalConfiguration.Configuration.Services.GetServices(typeof(IModelBinder)).Cast <IModelBinder>().FirstOrDefault(); // Assert Assert.Equal(requestBinder, modelBinder); }
/// <summary> /// 初始化容器 /// </summary> /// <param name="config"></param> /// <param name="func"></param> public static void Init(System.Web.Http.HttpConfiguration config, Func <ContainerBuilder, ContainerBuilder> func = null) { //新建容器构建器,用于注册组件和服务 var builder = new ContainerBuilder(); //注册组件 MyBuild(builder); func?.Invoke(builder); //利用构建器创建容器 Instance = builder.Build(); //将AutoFac解析器设置为系统解析器 config.DependencyResolver = new AutofacWebApiDependencyResolver(Instance); }
public SpaHandler(AzureApplication httpApp, System.Web.Http.HttpConfiguration config) : base(config) { // TODO: A better job of matching that just grabbing the first segment firstSegments = System.Web.Routing.RouteTable.Routes .Where(route => route is System.Web.Routing.Route) .Select(route => route as System.Web.Routing.Route) .Where(route => !route.Url.IsNullOrWhiteSpace()) .Select( route => route.Url.Split(new char[] { '/' }).First()) .ToArray(); ExtractSpaFiles(httpApp); }
public void UnitTestOptionsShouldWork() { ODataQueryOptionsController controller = new ODataQueryOptionsController(); ODataQueryContext context = new ODataQueryContext(GetEdmModel(new ODataConventionModelBuilder()), typeof(ODataQueryOptions_Todo), path: null); HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, "http://localhost/?$orderby=Name desc"); System.Web.Http.HttpConfiguration configuration = new System.Web.Http.HttpConfiguration(); configuration.EnableDependencyInjection(); request.SetConfiguration(configuration); ODataQueryOptions <ODataQueryOptions_Todo> options = new ODataQueryOptions <ODataQueryOptions_Todo>(context, request); var result = controller.OptionsOnString(options); Assert.Equal("Test99", result); }
public void UnitTestOptionsOfStringShouldWork() { ODataQueryOptionsController controller = new ODataQueryOptionsController(); ODataQueryContext context = new ODataQueryContext(new ODataConventionModelBuilder().GetEdmModel(), typeof(string), path: null); HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, "http://localhost/?$top=1"); System.Web.Http.HttpConfiguration configuration = new System.Web.Http.HttpConfiguration(); configuration.EnableDependencyInjection(); request.SetConfiguration(configuration); ODataQueryOptions <string> options = new ODataQueryOptions <string>(context, request); var result = controller.OptionsWithString(options); Assert.Equal("One", result.List.Single()); }
public static WorkflowEngine CreateEngine(Credentials credentials) { Console.WriteLine("Loading Configuration"); var workflowConfig = new FlowConfigurationManager(); workflowConfig.SetCredentials(credentials); CloudConfigurationManager.Instance = (IConfigurationManager)workflowConfig; Console.WriteLine("Creating Edge Configuration"); var flowConfig = new EdgeFlowConfiguration(CloudConfigurationManager.Instance as Microsoft.WindowsAzure.ResourceStack.Common.Services.AzureConfigurationManager); flowConfig.Initialize().Wait(); flowConfig.EnsureInitialized(); var httpConfig = new System.Web.Http.HttpConfiguration(); httpConfig.Formatters = new System.Net.Http.Formatting.MediaTypeFormatterCollection(); httpConfig.Formatters.Add(FlowJsonExtensions.JsonMediaTypeFormatter); var edgeEngine = new EdgeManagementEngine(flowConfig, httpConfig); edgeEngine.RegisterEdgeEnvironment().Wait(); var dispatcher = new EdgeFlowJobsDispatcher( flowConfiguration: flowConfig, httpConfiguration: httpConfig); var callbackFactory = new FlowJobsCallbackFactory( flowConfiguration: flowConfig, httpConfiguration: httpConfig, requestPipeline: null); flowConfig.InitializeFlowJobCallbackConfiguration(callbackFactory); dispatcher.Start(); dispatcher.ProvisionSystemJobs(); Console.WriteLine("Registering Web Environment"); var engine = new EdgeFlowWebManagementEngine(flowConfig, httpConfig); return(new WorkflowEngine() { Engine = engine, Config = flowConfig }); }
internal static void RegisterContainer(System.Web.Http.HttpConfiguration httpConfiguration) { var builder = new ContainerBuilder(); builder.RegisterControllers(typeof(MvcApplication).Assembly); builder.RegisterApiControllers(typeof(MvcApplication).Assembly); builder.RegisterType <SqlRestaurantData>() .As <IRestaurantData>() .InstancePerRequest(); builder.RegisterType <OdeToFoodDbContext>().InstancePerRequest(); var container = builder.Build(); DependencyResolver.SetResolver(new AutofacDependencyResolver(container)); httpConfiguration.DependencyResolver = new AutofacWebApiDependencyResolver(container); }
// For more information on configuring authentication, please visit http://go.microsoft.com/fwlink/?LinkId=301864 public void ConfigureAuth(IAppBuilder app, System.Web.Http.HttpConfiguration config) { // Must be the first to be set otherwise it won't work. app.UseCors(Microsoft.Owin.Cors.CorsOptions.AllowAll); // Configure the db context and user manager to use a single instance per request app.CreatePerOwinContext(ApplicationDbContext.Create); app.CreatePerOwinContext <ApplicationUserManager>(ApplicationUserManager.Create); // Enable the application to use a cookie to store information for the signed in user // and to use a cookie to temporarily store information about a user logging in with a third party login provider app.UseCookieAuthentication(new CookieAuthenticationOptions()); app.UseExternalSignInCookie(DefaultAuthenticationTypes.ExternalCookie); // Configure the application for OAuth based flow PublicClientId = "self"; OAuthOptions = new OAuthAuthorizationServerOptions { TokenEndpointPath = new PathString("/Token"), Provider = new ApplicationOAuthProvider(PublicClientId), AuthorizeEndpointPath = new PathString("/api/Account/ExternalLogin"), AccessTokenExpireTimeSpan = TimeSpan.FromDays(14), AllowInsecureHttp = true }; // Enable the application to use bearer tokens to authenticate users app.UseOAuthBearerTokens(OAuthOptions); // Uncomment the following lines to enable logging in with third party login providers //app.UseMicrosoftAccountAuthentication( // clientId: "", // clientSecret: ""); //app.UseTwitterAuthentication( // consumerKey: "", // consumerSecret: ""); //app.UseFacebookAuthentication( // appId: "", // appSecret: ""); //app.UseGoogleAuthentication(new GoogleOAuth2AuthenticationOptions() //{ // ClientId = "", // ClientSecret = "" //}); }
public void DefaultRegistration() { // Arrange //var httpConfiguration = TestHelper.MockHttpConfiguration(); var httpConfig = new System.Web.Http.HttpConfiguration(); DataTables.AspNet.WebApi2.Configuration.RegisterDataTables(httpConfig); var modelBinder = System.Web.Http.GlobalConfiguration.Configuration.Services .GetServices(typeof(IModelBinder)) .Cast <IModelBinder>() .FirstOrDefault(); // Assert Assert.NotNull(modelBinder); Assert.NotNull(modelBinder as IModelBinder); Assert.Null((modelBinder as ModelBinder).ParseAdditionalParameters); }
/// <summary> /// 使用IOC /// </summary> /// <param name="app"></param> /// <param name="config"></param> /// <returns></returns> public static IContainer UseAutofac(this IAppBuilder app, System.Web.Http.HttpConfiguration config) { if (config == null) { throw new ArgumentNullException(nameof(config)); } var builder = new ContainerBuilder(); var assembly = typeof(Startup).Assembly; builder.RegisterAssemblyModules(assembly); builder.RegisterApiControllers(assembly); var container = builder.Build(); config.DependencyResolver = new AutofacWebApiDependencyResolver(container); GlobalConfiguration.Configuration.UseAutofacActivator(container); return(container); }
public static IContainer Register(System.Web.Http.HttpConfiguration config) { var builder = new Autofac.ContainerBuilder(); builder.RegisterModule(new Domain.Core.Modules.CoreModule()); builder.RegisterModule(new Domain.Core.Modules.LogModule()); builder.RegisterType <PrintProcessor>().As <IPrintProcessor>(); builder.RegisterApiControllers(typeof(WebApiApplication).Assembly); var container = builder.Build(); //Mvc & WebApi DependencyResolvers DependencyResolver.SetResolver(new Autofac.Integration.Mvc.AutofacDependencyResolver(container)); config.DependencyResolver = new AutofacWebApiDependencyResolver(container); return(container); }
public static void ConfigureSwagger(System.Web.Http.HttpConfiguration config) { // Use the custom ApiExplorer that applies constraints. This prevents // duplicate routes on /api and /tables from showing in the Swagger doc. config.Services.Replace(typeof(IApiExplorer), new MobileAppApiExplorer(config)); config.EnableSwagger(c => { c.SingleApiVersion("v1", "myService"); // Tells the Swagger doc that any MobileAppController needs a // ZUMO-API-VERSION header with default 2.0.0 c.OperationFilter <MobileAppHeaderFilter>(); // Looks at attributes on properties to decide whether they are readOnly. // Right now, this only applies to the DatabaseGeneratedAttribute. c.SchemaFilter <MobileAppSchemaFilter>(); }) .EnableSwaggerUi(); }
public void Configuration(IAppBuilder app) { var httpConfig = new System.Web.Http.HttpConfiguration(); var autofacContainer = new AutofacClass(); var modules = new List <Autofac.Module>(); var container = autofacContainer.Configure(httpConfig, modules, null); app.UseAutofacMiddleware(container); app.UseAutofacMvc(); app.UseAutofacWebApi(httpConfig); Task_Traking.App_Start.WebApiConfig.Register(httpConfig); app.UseWebApi(httpConfig); }
public DependencyResolverExtensionsTests() { _config = new System.Web.Http.HttpConfiguration(); _resolverMock = new Mock<IDependencyResolver>(); CustomServices.Reset(); }
public void ConfigureShouldAddHandlerToHttpConfiguration() { var config = new System.Web.Http.HttpConfiguration(); WebApiProfilerSettings.Configure(config); Assert.IsTrue(config.MessageHandlers.Any(x => x is ProfilerMessageHandler), "ProfilerMessageHandler was not found in MessageHandlers collection"); }