Я следую за архитектурой Onion для моего веб-API и проекта AngularJS. В части Infrastructure.DependencyResolution я использую Simple Injector. Вот мой код:Простой инжектор с веб-интерфейсом API 2. PreApplicationStartMethod не запускается
[assembly: PreApplicationStartMethod(typeof(IocConfig), "RegisterDependencies")]
namespace Infrastructure.DependencyResolution
{
public class IocConfig
{
private static Container _container;
public static void RegisterDependencies()
{
_container = new Container();
_container.Verify();
_container.RegisterWebApiRequest<IEntitiesContext>(() =>
{
return new MyContext();
});
_container.RegisterWebApiRequest<IUserRepository, UserRepository>();
_container.RegisterWebApiRequest<IAccountService, AccountService>();
_container.RegisterWebApiRequest<IUnitOfWork, UnitOfWork>();
}
}
}
Теперь если я пытаюсь поставить URL, чтобы перейти на мой контроллер счета, я получаю эту ошибку:
An error occurred when trying to create a controller of type 'AccountController'. Make sure that the controller has a parameterless public constructor.
я искал и нашел, что Simple Инжектор имеет несколько разных код для Web Api как это было предложено их site Like:
// This is an extension method from the integration package.
container.RegisterWebApiControllers(GlobalConfiguration.Configuration);
Я скопировал, что хорошо, но он не принял GlobalConfiguration.Configuration, я думаю, потому что я использую его в Весах ry проект.
Когда я установил точку останова в методе RegisterDependencies
, Visual Studio не останавливается в точке останова.
Может ли кто-нибудь показать мне, куда идти?
* он не принял GlobalConfiguration.Configuration * Что он принял? –
Это означает, что он дал ошибку времени компиляции. –
Какая ошибка? –