Microsoft.Practices.Unity包在哪里?

Say*_*ndo 14 .net c# unity-container nuget

一小时前我更新了我的nuget软件包以找到我正在处理的解决方案,我收到了Unity抛出的错误消息,

类型"IUnityContainer"在未引用的程序集中定义.您必须添加对程序集"Microsoft.Practices.Unity,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = 6d32ff45e0ccc69f"的引用.

从那时起,我一直在谷歌上搜索有关这个包的地方的一些有用的信息.文章,围绕它的问题是旧的,处理2.x版本.

Nuget没有这样的包裹.

我安装了Unity堆栈下面列出的软件包:

  <package id="Unity" version="4.0.2" targetFramework="net452" />
  <package id="Unity.ServiceLocator" version="2.0.0" targetFramework="net452" />
  <package id="Unity.WebAPI" version="5.2.3" targetFramework="net452" />
Run Code Online (Sandbox Code Playgroud)

任何帮助表示赞赏!

Loa*_*ron 24

我不得不改变

using Microsoft.Practices.unity;
Run Code Online (Sandbox Code Playgroud)

using Unity;
Run Code Online (Sandbox Code Playgroud)

我认为是因为Unity与NuGet的更新


Mar*_*cik 18

添加nuget后

Install-Package Unity
Run Code Online (Sandbox Code Playgroud)

它位于

packages\Unity.4.0.1\lib\net45\Microsoft.Practices.Unity.dll 
Run Code Online (Sandbox Code Playgroud)

您可能只需要添加对此程序集的引用.

  • 我安装了错误的软件包,AgileSight 发布的 4.0.2。4.0.1 - 自动引用 Miicrosoft.Practices.Unity.dll - 由 Microsoft 发布,并且运行得非常顺利。 (2认同)