私はUnityでDependency Resolverを使用しようとしていますが、コントローラの作成時に問題があります。コントローラの ここでは例:コントローラは、作成しようMVC 3ベータ+依存関係リゾルバ+ Unity =問題が発生しました
public class AccountController : Controller
{
private readonly ICourseService _courseService;
public AccountController(ICourseService courseService)
{
_courseService = courseService;
}
}
しかし、 - 私は例外だ「このオブジェクトのために定義されていませんパラメータなしのコンストラクタを。」私はこのコントローラーのデフォルトのコンストラクターを追加しようとしますが、courseServiceは作成しませんでした。また、[Dependency]属性でプロパティを追加しようとしましたが、何も起こりませんでした。ここ は、依存リゾルバクラスです:
public class UnityDependencyResolver : IDependencyResolver
{
private readonly IUnityContainer _container;
public UnityDependencyResolver(IUnityContainer container)
{
_container = container;
}
public object GetService(Type serviceType)
{
return _container.IsRegistered(serviceType) ? _container.Resolve(serviceType) : null;
}
public IEnumerable<object> GetServices(Type serviceType)
{
return _container.IsRegistered(serviceType) ? _container.ResolveAll(serviceType) : new List<object>();
}
}
とGlobal.asax.cs:
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
RegisterGlobalFilters(GlobalFilters.Filters);
RegisterRoutes(RouteTable.Routes);
var container = new UnityContainer();
container.RegisterType<ICourseService, CourseService>();
DependencyResolver.SetResolver(new UnityDependencyResolver(container));
}
誰も私を助けることができますか?
あなたがこの問題の解決策を見つけるか、私は同じエラーを取得しています。ありがとう – NullReference