我正在尝试在Windows窗体应用程序中使用Simple Injector.不幸的是,https://simpleinjector.readthedocs.org/en/latest/windowsformsintegration.html的文档不正确或已过时.实际运行该示例时,会导致以下错误:配置无...
![](https://oss.womengda.net/imgfile/2309/1E39A14VY50-46146.jpg)
我正在尝试在Windows窗体应用程序中使用Simple Injector.不幸的是,https://simpleinjector.readthedocs.org/en/latest/windowsformsintegration.html的文档不正确或已过时.
实际运行该示例时,会导致以下错误:
配置无效.报告了以下诊断警告:
– [Disposable Transient Component] MainView注册为transient,但实现了IDisposable.
此外,我正在构建的应用程序是一个Winforms MVP(被动视图)项目.我可以将MainView的范围更改为单例并且它可以工作.但是对于我的生活,由于这个范围问题,我无法弄清楚如何打开其他窗户.有没有人在具有多个窗口的真实世界MVP winforms应用程序中成功使用SimpleInjector?我很想知道Presenters,Forms / Views和Main入口点是如何配置的以及它们的Lifestyle范围是什么.
仅供参考,我尝试过使用LifetimeScoping和ExecutionContextScoping扩展,但绝对没有任何效果.也许这只是一个PEBKAC问题.
谢谢,
埃里克
解决方法:
使用container.RegisterSingleton< “object”>();
http://simpleinjector.readthedocs.org/en/latest/lifetimes.html
本文标题为:c# – 简单注入器 – Windows窗体示例已损坏
![](/xwassets/images/pre.png)
![](/xwassets/images/next.png)
- C# 使用Aspose.Cells 导出Excel的步骤及问题记录 2023-05-16
- .NET CORE DI 依赖注入 2023-09-27
- Unity3D实现渐变颜色效果 2023-01-16
- Oracle中for循环的使用方法 2023-07-04
- user32.dll 函数说明小结 2022-12-26
- 在C# 8中如何使用默认接口方法详解 2023-03-29
- 如何使用C# 捕获进程输出 2023-03-10
- Unity Shader实现模糊效果 2023-04-27
- c# 模拟线性回归的示例 2023-03-14
- WPF使用DrawingContext实现绘制刻度条 2023-07-04