see*_*per 15

作为LightInject的作者,我觉得我应该对此发表评论:)

假设您是一名图书馆开发人员,并希望能够在内部使用IoC框架而不依赖于第三方程序集.通过使用LightInject的源版本,可以非常轻松地完成此操作,您仍然可以将库作为单个程序集发送.

许多框架开发人员选择不使用IoC框架只是因为他们不想要额外的依赖.

替代方法是使用ILMerge之类的工具,它能够将两个或更多个程序集合并到一个程序集中.

这是一个更高级的选项,还需要额外的构建步骤来执行合并.

请注意,LightInject有两种版本,源版本所有类型都是内部版本,二进制版本就像任何其他第三方依赖项一样.

承担依赖关系起初可能看起来不那么糟糕,但如果您是框架开发人员,如果框架的使用者使用相同依赖关系的另一个版本,则很容易遇到问题

最好的祝福

伯恩哈德里希特


Sol*_*lli 5

它使集成作为另一个项目中的源更容易:只需将一个文件添加到项目中就可以忘记它了.根据LightInject 的官方网站,这是一个受支持的安装方案,甚至还有一个NuGet包.

如果你想阅读它,我强烈建议在Visual Studio中打开它并使用代码导航功能找到你想要的东西,例如VS 2013的Solution Explorer可以将文件内的类显示为该文件的子项.