zoukankan      html  css  js  c++  java
  • .net web api ioc unity usage

    1.use nuget to install unity.webapi

    2.add configurations in application_start folder

    using Microsoft.Practices.Unity;
    using PatV2Tool.Bussiness.BLL;
    using PatV2Tool.Bussiness.Contract;
    using PatV2Tool.Bussiness.DAL;
    using PatV2Tool.Framework.Contract;
    using System.Web.Http;
    using Unity.WebApi;
    
    namespace PtvV2ToolWebApi
    {
        public static class UnityConfig
        {
            public static void RegisterComponents()
            {
                var container = new UnityContainer();
    
                // register all your components with the container here
                // it is NOT necessary to register your controllers
    
                // e.g. container.RegisterType<ITestService, TestService>();
    
                container.RegisterType<IServerService, ServerService>(new HierarchicalLifetimeManager());
    
                GlobalConfiguration.Configuration.DependencyResolver = new UnityDependencyResolver(container);
            }
        }
    }
    View Code

    3.add to global.ascx something to 

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.Http;
    using System.Web.Mvc;
    using System.Web.Optimization;
    using System.Web.Routing;
    
    namespace PtvV2ToolWebApi
    {
        // Note: For instructions on enabling IIS6 or IIS7 classic mode, 
        // visit http://go.microsoft.com/?LinkId=9394801
    
        public class WebApiApplication : System.Web.HttpApplication
        {
            protected void Application_Start()
            {
                AreaRegistration.RegisterAllAreas();
    
                UnityConfig.RegisterComponents();
    
                WebApiConfig.Register(GlobalConfiguration.Configuration);
                FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
                RouteConfig.RegisterRoutes(RouteTable.Routes);
                BundleConfig.RegisterBundles(BundleTable.Bundles);
            }
        }
    }
    View Code

    3.if sometimes, "

    The type initializer for 'System.Web.Http. GlobalConfiguration' threw an exception.

    " appears,try applying the following cmdlet in nuget console.

    The type initializer for 'System.Web.Http. GlobalConfiguration' threw an exception.
    View Code
  • 相关阅读:
    2018年国内就业薪资高的7大编程语言排行
    前端css实现最基本的时间轴
    前端css实现最基本的时间轴
    用Canvas画一个刮刮乐
    用Canvas画一个刮刮乐
    「干货」从菜鸟到大神,前端学习书籍推荐
    洛谷P3379 【模板】最近公共祖先(LCA)
    洛谷 P1359 租用游艇
    位运算...
    洛谷P2782 友好城市
  • 原文地址:https://www.cnblogs.com/hualiu0/p/5003310.html
Copyright © 2011-2022 走看看