【问题标题】:Is it necessary to deploy the XML file in a class library?是否需要在类库中部署 XML 文件?
【发布时间】:2015-11-18 10:38:48
【问题描述】:

我在 VS 2012 中开发了很多类库项目,用于 Windows 窗体和 Web 窗体应用程序。

问题很简单。我需要将 DLL 文件本身与创建的 XML 文件一起部署吗?

例如,类库项目称为 DataWare。在构建时,我在 Release 文件夹中有 5 个文件(此项目参考实体框架):

  • DataWare.dll
  • DataWare.pdb
  • DataWare.dll.config
  • EntityFramework.dll
  • EntityFramework.xml

我知道“.pdb”文件包含调试信息,所以不需要部署。不考虑“.config”文件。相反,App.config 或 Web.config 是。

关于这个,我想我只需要部署 DataWare.dll 和 EntityFramework.dll。

但是,主要的疑问是我是否还需要部署 EntityFramework.xml。

问候 詹姆

【问题讨论】:

    标签: c# c#-4.0 deployment entity-framework-6 class-library


    【解决方案1】:

    XML 文件包含程序集中公共类型和成员的 doc cmets。

    仅当您希望 Visual Studio 在 IntelliSense 中显示文档时才需要它。

    如果您正在部署面向消费者的应用(而不是面向开发人员的可重用库),则不需要它。

    【讨论】:

    • 谢谢....最后....exe文件还有一个“.vshost”文件....不需要部署,是吗?
    • 正确;仅由调试器使用。
    【解决方案2】:

    不,在大多数情况下您不需要它。如果有需要在本地复制并使用配置引用的外部 DLL,那么您可能需要这样做,但这种情况很少见。

    【讨论】:

    • 这不是配置文件,DLL 根本不能有配置文件。
    • 很好奇,为什么有 [dllname].dll.config 文件呢?我认为在某些情况下(例如 Newtonsoft),类库需要知道另一个 DLL 的位置才能工作。
    • .dll.config 文件根本不应该存在,除非您将 App.config 添加到 DLL 项目(您不应该这样做)。
    • @SLaks:有什么特别的理由避免它吗?所以我有一个 WPF 桌面应用程序和一个 Word VSTO 加载项,它们都在类库之上形成了一个薄的 UI 层。我正在使用内置的 .NET Settings Provider 在库项目中存储一些用户级设置。它有什么缺点吗?否则我必须在两个 UI 项目中复制整个用户设置。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-23
    • 2012-08-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多