c# - MVC5 中的主要依赖注入(inject)

标签 c# authentication dependency-injection asp.net-mvc-5

在另一个 stackoverflow 问题中 MVC5 IoC and Authentication第一个答案指出作者使用依赖注入(inject)来注入(inject) IPrincipal。我很乐意为我的汇编程序执行此操作,这样我就不必从 Controller 传递当前用户 (IPrincipal)。

任何人都可以举例说明如何使用 DI 在 C# MVC5 中注入(inject) IPrincipal 吗?下面是我首先要实现它的 IoC。在给出第一个答案后添加。

    public class ViewModelAssemblersInstaller : IWindsorInstaller
    {
        public void Install(IWindsorContainer container, IConfigurationStore store)
        {
            container.Register(
                Component.For<IAspNetUserAssembler>()
                .ImplementedBy<AspNetUserAssembler>());
        }
    }

最佳答案

对于温莎城堡,它是这样的:

container.Register(Component.For<IPrincipal>()
  .LifeStyle.PerWebRequest
  .UsingFactoryMethod(() => HttpContext.Current.User));

关于c# - MVC5 中的主要依赖注入(inject),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22771657/

相关文章:

angular - 为 Angular 4 中的所有组件注入(inject)服务作为单例

angular - 在非 Angular 类中获取注入(inject)的依赖项

c# - 以编程方式更改 WPF 中的按钮图标

asp.net-mvc - 如何将 Azure AD 身份验证添加到现有 ASP.NET MVC 应用程序?

c# - 使用基于声明的身份验证使用 SharePoint 2010 对同一 AD 进行身份验证时区分 Windows Auth 和 Forms Auth 用户

java - 使用 Htmlunit,按钮 click() 不起作用;

c# - 付款日期为 UTC

c# - 在哪里放置 IoC 容器配置?

c# - 如何降低这个 C# 方法的圈复杂度?

java - 使用 PowerMock 或您让您的测试对您的设计有多大影响?