0

为什么如果您的解决方案中有一个类库,那么引用它以便 VS2012 识别其中的类的唯一方法是进入引用并从项目选项卡中选择类。为什么你不能单独编译类库并使用生成的 .dll 并通过浏览选项卡添加它,注意:我仍然假设类库仍然作为一个单独的项目存在于你的解决方案中。

4

3 回答 3

2

你可以。引用编译版本而不是项目并没有多大意义,但你可以。添加对项目的引用时,单击"Browse"对话框左侧的 和/或"Browse"对话框底部的按钮。这将允许您浏览到 DLL 文件并将其添加为参考。

于 2013-09-11T16:32:29.693 回答
1

您可以编译项目并按照您所说的那样引用已编译的dll

但是:引用项目 dll 将引用特定配置,因此您可能正在引用调试编译的 dll,但是当您使用发布配置发布解决方案时,您不希望这样做。引用 dll 意味着您需要在源代码管理中包含 bin 文件夹,这又不是最佳实践,因为它应该在编译解决方案时创建。

引用项目是最佳实践,这意味着当您构建不同的配置时,所有项目都会编译为该配置。

于 2013-09-11T16:33:50.793 回答
1

不仅有 Projects 和 Dll 方式,还有一种称为“动态加载”的方式System.Reflections。您也可以在运行时获取所需的 dll 并使用它的类和成员

  1. 将项目添加为引用的好处是,现在无论您在成功编译引用项目或整个解决方案时所做的更改如何,都会自动引用该类所调用的类。

  2. 引用 dll - 如果您正在考虑所有项目中的一些常用方法,并且不需要对现有实用程序 dll 进行更改,那么编译为 dll 并将其作为 dll 引用是最好的选择。另请注意,如果您使用 dll 作为参考,则每次更改类库项目中的代码时都需要编译和参考。

  3. 如果在网络中使用反射,它会给你以你的方式使用 dll 的权力,加载什么 dll,不加载什么,但它会比上面两个更乏味。

于 2013-09-11T17:13:57.477 回答