IUnityContainer.Resolve<T> throws error claiming it cannot be used with type parameters
I had the same problem and found the "fix" looking at Prism sample code files. Looks like, even if it is not a dll in Unity V2 you have to add a reference in your class to: Microsoft.Practices.Unity
my complete "using" section is as follow
using System;
using System.Windows;
using Microsoft.Practices.Composite.Modularity;
using Microsoft.Practices.Unity;
using Microsoft.Practices.Composite.UnityExtensions;
I'm not sure if you are using Silverlight, but the generic version for Container.Resolve IS in Microsoft.Practices.Unity.
Microsoft no longer owns Unity and it's in version 5, the namespace is now:
using Unity;
Ensure that is in your using section when using:
container.Resolve<T>();
I faced this problem and none of this answers did not help me. I was getting the compile time error
Unknown method RegisterType() of Microsoft.Practices.Unity.IUnityContainer
for my below code.
Container.RegisterType<IMyInterface, MyClass>();
I found that if you did not implement IMyInterface
to the class MyClass
, you get this issue.
Hope it resolves for you too...