c# - 防止 ASP.Net 项目将 {assembly}.dll.config 复制到 bin 文件夹

标签 c# asp.net visual-studio visual-studio-2015 web-config

在 Visual Studio(版本 2015 社区)中构建 ASP.Net 项目时,网站配置文件(例如Web.Config)被构建过程复制到bin 文件夹与编译后的 .dll 文件并重命名为 {assembly}.dll.config

尽管 Web.config 文件的 Properties Window 设置了以下参数,但仍会发生这种情况:

Web.config Properties Window

对于我们的解决方案,文件的第二个副本不是必需的,也没有用在输出 bin 文件夹中的 {assembly}.dll.config 形式中。

我想知道如何防止 Visual Studio 复制配置文件并将其放置在 bin 输出目录中。

两个地方有敏感的配置设置(Web.config 在根目录,{assembly}.dll.config 在输出目录)从安全角度来看是有问题的。

最佳答案

  • 部署您的应用程序,请发布您的应用程序。这样,仅部署必要的程序集/文件。您的 published /bin 文件夹将反射(reflect)这一点(不会有您提到的“重复项”)。

  • 安全:根据您的要求,您可以

    • 将“敏感”信息从 web.confg 中分离到它们自己的文件中。这通常只是为了防止在线存储库(TFSGit 等)- 通过排除文件在源代码控制中

      例如

      <appSettings file="AllMySecrets.config">
      ....
      
    • 使用 encryption

嗯。

关于c# - 防止 ASP.Net 项目将 {assembly}.dll.config 复制到 bin 文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42823576/

相关文章:

c# - Windows 10 UWP 应用程序在启动画面后立即关闭/崩溃

visual-studio - Visual Studio 作为 CMake 友好项目的编辑器

c# - JSON.Net 默认将 Enums 序列化为字典中的字符串 - 如何使其序列化为 int?

javascript - 单击按钮时 Jquery 返回父函数

asp.net - CSS 与不同浏览器的兼容性

css - ASP.NET CheckBoxList ListItem 没有换行

c# - 如何在 visual studio 中找到要连接的 informix 数据源

c# - 在 MVVM 中,如何防止 BackgroundWorker 卡住 UI?

c# - 如何保证延续按任务完成顺序运行?

c# - 我可以找出我正在使用的方法的名称吗?