Вот код:
protected void Application_Start(object sender, EventArgs e)
{
UnityContainer container = new UnityContainer();
container.RegisterType<IMapper, CustomMapper>();
container.RegisterType<ISessionLoginInfo, CustomSession>();
IDateTimeProvider dtp = DateTimeProvider.Current;
var cc = container.RegisterInstance<IDateTimeProvider>(dtp);
GlobalConfiguration.Configuration.DependencyResolver = new Unity.WebApi.UnityDependencyResolver(container);
}
Прямо у последней фигурной скобки я получаю следующее исключение:
Ошибка сервера в приложении '/'.Не удалось загрузить тип «Custom.Shared.IDateTimeProvider» из сборки «Custom.Shared, версия = 1.0.0.0, культура = нейтральная, PublicKeyToken = ноль».Описание: во время выполнения текущего веб-запроса произошло необработанное исключение.Пожалуйста, просмотрите трассировку стека для получения дополнительной информации об ошибке и о том, где она возникла в коде.
Сведения об исключении: System.TypeLoadException: Не удалось загрузить тип 'Custom.Shared.IDateTimeProvider' из сборки 'Custom.Shared,Версия = 1.0.0.0, Культура = нейтральная, PublicKeyToken = null '.
Сборка Custom.Shared находится в той же папке, что и основная сборка веб-приложения.Интерфейс IDateTimeProvider и соответствующий класс DateTimeProvider размещаются в вышеупомянутой сборке Custom.Shared в пространстве имен Custom.Shared.Также, если я исключу строку с помощью RegisterInstance () и создам экземпляр класса DateTimeProvider, ошибка исчезнет.Что я сделал не так и как правильно сделать инициализацию DI?