Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# WebAPI、Unity和;Web.config_C#_Asp.net_Asp.net Mvc 4_Asp.net Web Api_Unity Container - Fatal编程技术网

C# WebAPI、Unity和;Web.config

C# WebAPI、Unity和;Web.config,c#,asp.net,asp.net-mvc-4,asp.net-web-api,unity-container,C#,Asp.net,Asp.net Mvc 4,Asp.net Web Api,Unity Container,我试图在我的WebAPI解决方案中使用Unity,并试图从web.config文件加载配置 这是web.config中的unity部分: <unity xmlns="http://schemas.microsoft.com/practices/2010/unity"> <assembly name="MyWebAPI" /> <namespace name="MyWebAPI.Controllers" /> <container>

我试图在我的WebAPI解决方案中使用Unity,并试图从web.config文件加载配置

这是web.config中的unity部分:

<unity xmlns="http://schemas.microsoft.com/practices/2010/unity">
  <assembly name="MyWebAPI" />
  <namespace name="MyWebAPI.Controllers" />
  <container>
    <register type="MyController" mapTo="MyController">
      <constructor>
        <param name="param1">
          <value value="val1" />
        </param>
        <param name="param2">
          <value value="val2" />
        </param>
        <param name="param3">
          <value value="val3" />
        </param>
      </constructor>
      <lifetime type="singleton" />
    </register>
  </container>  
</unity>
但这对我不起作用,因为参数没有进入构造函数

WebAPI控制器构造函数:

    public MyController(string param1, string param2, string param3)
    {
        _param1 = param1;
        _param2 = param2;
        _param3 = param3;
    }

使用特定于Web API的全局配置解析器,而不是MVC依赖解析程序。e、 g:

GlobalConfiguration.Configuration.DependencyResolver = 
    new UnityDependencyResolver(container);

如果在安装时使用this Get set for Your。

而不是MVC DependencyResolver,请使用特定于Web API的GlobalConfiguration resolver。e、 g:

GlobalConfiguration.Configuration.DependencyResolver = 
    new UnityDependencyResolver(container);

如果在安装时使用this Get set for Your。

而不是MVC DependencyResolver,请使用特定于Web API的GlobalConfiguration resolver。e、 g:

GlobalConfiguration.Configuration.DependencyResolver = 
    new UnityDependencyResolver(container);

如果在安装时使用this Get set for Your。

而不是MVC DependencyResolver,请使用特定于Web API的GlobalConfiguration resolver。e、 g:

GlobalConfiguration.Configuration.DependencyResolver = 
    new UnityDependencyResolver(container);

如果您在安装时使用此设置。

对于Web Api,您的控制器基于您应该使用的ApiController类:

    GlobalConfiguration.Configuration.DependencyResolver = 
new UnityDependencyResolver(container);
这意味着

    DependencyResolver.SetResolver(
new Unity.Mvc3.UnityDependencyResolver(container));
用于将Unity注册为应用程序MVC端的依赖项解析程序

(如果您想为MVC和WebApi注册Unity,则可以同时使用这两个语句)

如果出现System.Web.Http版本错误,请尝试从引用中删除System.Web.Http.dll并删除Unit.WebApi。
然后重新添加Unity.WebAPI.5.1 Nuget软件包,应该可以了。

对于Web Api,您的控制器基于您应该使用的ApiController类:

    GlobalConfiguration.Configuration.DependencyResolver = 
new UnityDependencyResolver(container);
这意味着

    DependencyResolver.SetResolver(
new Unity.Mvc3.UnityDependencyResolver(container));
用于将Unity注册为应用程序MVC端的依赖项解析程序

(如果您想为MVC和WebApi注册Unity,则可以同时使用这两个语句)

如果出现System.Web.Http版本错误,请尝试从引用中删除System.Web.Http.dll并删除Unit.WebApi。
然后重新添加Unity.WebAPI.5.1 Nuget软件包,应该可以了。

对于Web Api,您的控制器基于您应该使用的ApiController类:

    GlobalConfiguration.Configuration.DependencyResolver = 
new UnityDependencyResolver(container);
这意味着

    DependencyResolver.SetResolver(
new Unity.Mvc3.UnityDependencyResolver(container));
用于将Unity注册为应用程序MVC端的依赖项解析程序

(如果您想为MVC和WebApi注册Unity,则可以同时使用这两个语句)

如果出现System.Web.Http版本错误,请尝试从引用中删除System.Web.Http.dll并删除Unit.WebApi。
然后重新添加Unity.WebAPI.5.1 Nuget软件包,应该可以了。

对于Web Api,您的控制器基于您应该使用的ApiController类:

    GlobalConfiguration.Configuration.DependencyResolver = 
new UnityDependencyResolver(container);
这意味着

    DependencyResolver.SetResolver(
new Unity.Mvc3.UnityDependencyResolver(container));
用于将Unity注册为应用程序MVC端的依赖项解析程序

(如果您想为MVC和WebApi注册Unity,则可以同时使用这两个语句)

如果出现System.Web.Http版本错误,请尝试从引用中删除System.Web.Http.dll并删除Unit.WebApi。
然后重新添加Unity.WebAPI.5.1 Nuget包,应该可以了。

我尝试了……我将代码更改为GlobalConfiguration.Configuration.DependencyResolver=新的Unity.WebAPI.UnityDependencyResolver(容器);但现在我发现此错误,无法加载文件或程序集“System.Web.Http,Version=4.0.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35”或其依赖项之一。定位的程序集清单定义与程序集引用不匹配。(HRESULT的异常:0x8013100)我尝试了…我将代码更改为GlobalConfiguration.Configuration.DependencyResolver=new Unity.WebApi.UnityDependencyResolver(容器);但现在我发现此错误,无法加载文件或程序集“System.Web.Http,Version=4.0.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35”或其依赖项之一。定位的程序集清单定义与程序集引用不匹配。(HRESULT的异常:0x8013100)我尝试了…我将代码更改为GlobalConfiguration.Configuration.DependencyResolver=new Unity.WebApi.UnityDependencyResolver(容器);但现在我发现此错误,无法加载文件或程序集“System.Web.Http,Version=4.0.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35”或其依赖项之一。定位的程序集清单定义与程序集引用不匹配。(HRESULT的异常:0x8013100)我尝试了…我将代码更改为GlobalConfiguration.Configuration.DependencyResolver=new Unity.WebApi.UnityDependencyResolver(容器);但现在我发现此错误,无法加载文件或程序集“System.Web.Http,Version=4.0.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35”或其依赖项之一。定位的程序集清单定义与程序集引用不匹配。(来自HRESULT的异常:0x8013100)