问题标签 [dependency-resolver]
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.
dependency-injection - 具有 2 个不同服务的相同服务的 Autofac DependencyResolver
我有一项包含两个不同组件的服务
我想解决这两个问题。我正在尝试这种方式
现在在我的控制器中,我想解决我的依赖
我以这种方式使用它:
如果我在配置中声明一个组件,一切都会完美运行。但是如果我添加更多相同接口类型的组件,就会出现问题。我试图用
但是该属性始终为空...我该怎么办?
谢谢
c# - Unity 解析通用事件处理程序
我正在使用 Unity 注册我的所有域事件处理程序,如下所示:
我的处理程序如下所示:
我的域事件如下所示:
我使用以下方法提出此事件:
我使用以下代码处理引发的事件:
使用检查T
器是一种ProductCreated
类型,但Container.ResolveAll<IDomainEventHandler<T>>()
不能解决任何问题,即使通过检查器我可以看到它Container
确实注册了这个注册类型IDomainEventHandler
,映射类型为ProductCreatedHandler
为什么容器不解析我在开始时注册的泛型类型?
maven - 当本地和远程存储库中存在具有不同时间戳的 SNAPSHOT 时,Maven 如何解决 SNAPSHOT 依赖关系?
假设我有一个A
依赖于项目的开发项目B
——该项目目前也在开发中,尚未发布。
所以,在A
的 POM 文件中,我有以下部分:
在工作中,我们有一个远程仓库(Nexus)和一个 CI 框(运行 Jenkins)。
当我的同事对 SVN 进行更改B
并提交时,Jenkins 将选择该更改,编译它并将其放入远程仓库。大约在那个时候,我可能会B
在本地打开,进行更改,编译并将其安装到我的本地存储库中。
B
当我尝试在mvn clean install
A
本地时,Maven 现在如何解决?
- 如果找到一个,它是否总是默认为我的本地 SNAPSHOT?
- 它会始终默认为远程快照吗?
- 它会看时间戳吗?
- 它会做一些不同的事情吗?
前几天我们把自己弄得一团糟,基本上不得不手动删除本地存储库,以确保我们得到了我们期望得到的版本。所以我现在正试图弄清楚到底发生了什么。(因此,如果您有指向文档中详细说明的地方的链接,那也将不胜感激......)在本地,我有时在我的存储库文件夹中有一些 SNAPSHOT 构建,一个没有,一些有什么看起来像SNAPSHOT
文件名部分之后的时间戳......
c# - Unity 按需解决接口属性
我有一个接口IRDFReport
和一个实现它的基类BaseReport
。和属性是重对象View
,Report
只有在实际请求报告时才应该解析。我使用了两个简单的字符串后缀来查找对象的命名映射View
和Report
属性。
我想使用 Unity 按需解析重物,同时能够解析所有报告以获得它们的列表。这种解决get
方法是我能做的最好的吗?
BaseReport
它实现了这个接口:
在我的报告管理器中,我像这样注册它们:
c# - BuildUp和Resolve之间的区别
我正在玩 Unity Library,因为在我的工作场所它被高度使用,所以想了解它的不同行为。
我很困惑BuildUp
,Resolve
因为他们似乎做同样的事情,所以我不知道什么时候适合BuildUp
使用Resolve
。
我错过了什么吗?
这是示例:
使用示例Resolve<T>()
:
这是使用示例BuildUp()
:
c# - 列出依赖解析器 DefaultConstructorFinder 的所有缺失 Autofac 注册
当 Autofac 尝试通过依赖解析器解析构造函数参数时,有没有办法一次列出所有丢失的注册?或者是一次通过一个的唯一方法..
以此为例:
我知道实现 IMyInterface 的类 MyInterfaceImpl 必须像这样使用 Autofacs ContainerBuilder 注册:
但是,如果 MyInterfaceImpl 依赖于 10 个其他构造函数,并且每个构造函数都依赖于少数几个构造函数怎么办?有没有办法让 Autofac 遍历所有尚未向 ContainerBuilder 注册的依赖项,而不是在第一次出现时抛出 DependencyResolutionException?
拿:
每个都有自己的构造函数需要注册..
等等
因为我缺少 Autofac 注册,所以显示以下异常消息,告诉我必须注册即 MyInterface2Impl 与接口。
在“MyWebApiController”类型上使用“Autofac.Core.Activators.Reflection.DefaultConstructorFinder”找到的任何构造函数都不能被可用的服务和参数调用
以及显示它拒绝哪个参数的详细信息:
无法解析构造函数'Void .ctor(IMyInterface2 myInterface2, IMyInterface3 myInterface3, ... etc ...) 的参数'IMyInterface2 myInterface2'
但是我可能有接下来的 5 个丢失的注册信息。这是一个烦恼,因为我必须启动站点/服务并调用 api 控制器,在我修复每个丢失的注册之后,有时在设置 coctail 时可能会有很多丢失的注册。
那么,Autofac 可以一次显示所有丢失的注册信息吗?
angular - 在渲染视图/模板之前等待 Angular 2 加载/解析模型
在 Angular 1.x 中,UI-Router 是我的主要工具。通过返回“resolve”值的承诺,路由器将在呈现指令之前简单地等待承诺完成。
或者,在 Angular 1.x 中,空对象不会使模板崩溃 - 因此,如果我不介意暂时不完整的渲染,我可以在填充最初为空的模型对象$digest
后使用来渲染。promise.then()
在这两种方法中,如果可能的话,我宁愿等待加载视图,如果无法加载资源,则取消路线导航。这为我节省了“取消导航”的工作。编辑:请注意,这特别意味着此问题要求使用 Angular 2 期货兼容或最佳实践方法来执行此操作,并要求尽可能避免使用“猫王操作员”!因此,我没有选择那个答案。
然而,这两种方法在 Angular 2.0 中都不起作用。当然,有一个标准的解决方案计划或可用于此。有谁知道它是什么?
以下问题可能反映了同样的问题:Angular 2 render template after the PROMISE with data is loaded。请注意,问题中没有代码或可接受的答案。
android-studio - 添加新登录活动时,无法在 Android Studio 中使用 gradle 添加对“android.support.design.widget.Snackbar”的依赖项
我正在尝试使用 New->Activity->Login 从 Android 工作室添加登录活动。该代码包含“import android.support.design.widget.Snackbar;”。我尝试构建它并得到“无法解析符号'Snackbar'”。我将 Snackbar 添加到 app->build.gradle 如下所示(compile 'com.nispok:snackbar:2.6.1'),请遵循此 SO 帖子:
然后我尝试“将项目与 gradle 文件同步”,但问题仍然没有解决。堆栈栏支持仍然没有被导入。我怎么能解决这个问题?Snackbar 是否依赖于某些版本的 appcompat?
c# - 通过使用构造函数注入 HttpModule 来注入 HttpContext 是否错误?
我有一个自定义 HttpModule ,我在其中跟踪 http 请求,部分实现如下;
这是我的依赖注册(使用 Autofac);
这里的问题是 HttpModule 只构造一次,而 HttpContext 需要为每个请求注入。我找到的解决方案是使用 DependencyResolver 作为;
但是,我想避免这种用法,因为 ServiceLocator 被认为是反模式。
有没有不使用 DependencyResolver 将 HttpContext 注入 HttpModule 的解决方案?