问题标签 [light-inject]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
241 浏览

c# - 将 lightInject 转换为 .netcore DI

我正在将一些 lightInject 代码转换为 .netcore DI

在 .netcore DI 中,我们有用于注册服务的 AddSingleton 和 AddTransient 函数。在 lightInject 中,我有 RegisterMethod。所以我只想知道当我们调用时,Register 方法是只注册单例还是多个。

0 投票
0 回答
38 浏览

light-inject - 如何将实例注入当前范围?

我想做类似以下的事情:

这可能吗?我该怎么办?

0 投票
1 回答
211 浏览

c# - 使用 LightInject 时如何注入 IServiceContainer?

我正在使用 LightInject,现在我需要知道如何自己解析类型。我尝试使用IServiceContainer,但是当我将此接口注入到我的类中时,我收到一条错误消息,指出这是一个未解决的依赖项。

我想要解决的是这个。在运行时我有一个Type我需要一个实例。所以我想做类似的事情SomeResolver.GetInstance(myType)

我怎样才能用 LightInject 做到这一点?

0 投票
1 回答
258 浏览

c# - 让 Hangfire 使用 ASP.NET MVC 和 LightInject

我有一个 ASP.NET MVC 应用程序,我最近升级为使用 LightInject DI。但是,即使使用 LightInject 扩展,我似乎也无法让 Hangfire 正确运行!

我在 Startup.cs 中的 Hangfire 设置:

但是,在运行 hangfire 作业时出现以下错误:

我希望能得到任何帮助来实现这一目标!提前非常感谢。

0 投票
0 回答
135 浏览

asp.net - 如何将 LightInject 与 Web 表单一起使用?

我有一个针对 .Net 4.8 的旧版 ASP.Net Web Forms 应用程序,我想在其中使用依赖注入。我们选择的引擎是 LightInject。

借助此答案和 Microsoft.AspNet.WebFormsDependencyInjection.Unity 项目中ContainerServiceProvider.Cs的源代码,我能够为 LightInject 创建自己的IServiceProvider容器并将其分配给HttpRuntime.WebObjectActivator

我可以注册我的服务,并通过HttpRuntime.WebObjectActivator.GetService().

但是,我还没有看到构造函数(或属性)注入在起作用......当我使用以下构造函数声明一个 ASPX 页面(比如 About.aspx)时,当我访问该页面时出现错误:“'About' 确实不包含带 0 个参数的构造函数”

访问页面时出现的错误截图

编辑:这是因为该网站在其配置文件中针对的是旧版本的 .Net。重定向4.8 修复了第一个问题。

现在问题不同了:如果我调试ContainerServiceProvider我实现的,我可以看到.Net 尝试获取ASP.about_aspx在临时程序集中定义的服务(例如C:/Windows/Microsoft.NET/Framework64/v4.0.30319/Temporary ASP.NET Files/root/e15e9fc8/41270200/App_Web_cdps00j5.DLL:),我的 LightInject 容器不知道。

所以我不确定我还需要做什么才能让构造函数注入在我的页面中工作。我假设我必须以某种方式告诉 LightInject 我的页面是依赖注入的候选者,但我不知道如何做到这一点(文档非常稀缺)。另外,我想知道 Unity 是如何工作的,因为除了我重用的实现之外,我在Microsoft.AspNet.WebFormsDependencyInjection.Unity的源代码中看不到任何魔力。ContainerServiceProvider.cs

更新:我尝试手动注册所有实现页面的类型,但它不起作用:

0 投票
1 回答
108 浏览

c# - 依赖注入(Autofac 等价于 resolvebyname 或 key)

Autofac 在依赖注入方面非常方便。

最近我改变了 lightinject 和 unitycontainer 使用的项目。在这里,我可以使用名称注册服务列表,但无法通过名称解析。

我试图把它作为IEnumerable. 我得到了所有,但不是我注册的名字。所以我无法区分它们。

我在这里想念什么?

0 投票
0 回答
849 浏览

c# - .NET Core,DI LightInject:如何在静态类中注入依赖项?

请帮我解决.. ;)

如何在静态类中注入依赖项?

我想将 Mapper 注入静态类。我阅读了有关 LightInject 的文档和谷歌,但没有找到如何实现它。或者是否有更好的解决方案来完成我的任务,而不仅仅是通过 DI?

我用:

  • ASP.NET 核心 MVC 3
  • LightInject 6.3.4(最新版本)
  • 自动映射器 10.0.0
0 投票
0 回答
64 浏览

c# - .Net Core、LightInject:如何通过属性设置 DI

无法通过类中的属性设置依赖注入...

我用谷歌搜索了所有内容并查看了所有文档,所以我找不到任何如何在 .net core mvc 上配置的内容...请帮助我

家庭控制器.cs

DI

构造函数注入运行良好,但属性注入失败。

很可能你需要添加一些额外的包和额外的设置,但我不知道是什么

我用:

  • ASP.NET 核心 MVC 3.1
  • LightInject 6.3.4(最新版本)
0 投票
0 回答
60 浏览

c# - Lightinject 可选属性注入

我希望我的 nuget 包的消费者能够注入一个可选的IConfiguration实现。我将它与 Umbraco 一起使用,因此它与 Lightinject 5.4 自动连接。

我创建了一个带有可选配置的属性:

文档状态:

注意:* LightInject 将所有读/写属性视为依赖项,但围绕属性依赖项实施松散策略,这意味着它不会* 在未解决的属性依赖项的情况下抛出异常。

然而,它抛出Unresolved dependency了财产。我应该如何传递这个可选的依赖项?

0 投票
0 回答
34 浏览

c# - ASP.NET MVC 站点偶尔以随机 RESX 语言呈现 - 可能的 DI 问题?

我有一个包含多种语言的 ASP.NET 4.8 MVC 应用程序。这些是在自己的类库中定义的 RESX 文件。然后使用 LightInject 作为依赖注入库将该类库注入到 MVC 应用程序中。

我遇到了一些用户报告说我们的网站随机以不同的语言显示它们的问题,这让我相信我没有正确配置语言类库的生命周期。但是查看 LightInject 的文档,默认范围似乎是正确的: https ://www.lightinject.net/#lifetime (以及更多关于它们的范围:https ://www.lightinject.net/#scope )

在所有问题的情况下 - 用户浏览器语言和操作系统语言与网站上显示的不同。(即美国有人将浏览器语言设置为英语,操作系统设置为美国英语,截取了屏幕截图,页面以荷兰语呈现!)

看到它如此随机,我发现它很难复制和解决,所以如果有人有类似的问题,我很想知道你是如何解决它的 - 或者如果你没有相同的,甚至你在 resx 类中使用的 Scope问题!

先感谢您 :)