如何防止自动生成 web.config 进入我的 dnn 模块项目?

How to prevent auto generated web.config into my dnn module project?

我在 Visual Studio 2010 年使用 DotNetNuke C# 编译模块模板开发了 DotNetNuke 模块。 我的模块项目位于 dnndev 中的 DesktopModules 部分下。

当我设计任何 .ascx 页面 (View.ascx) 时,它会自动在我的项目位置添加一个 web.config 文件。但是我已经有一个托管我的 dnndev 的 web.config 文件,并且由于两个 web.config 文件冲突,我认为我的自定义模块在 dnndev 页面中存在加载问题。

我的问题是如何防止自动生成 web.config 进入我的 dnn 模块项目?以及如何为我的模块项目从外部 web.config(dnndev 托管 web.config)读取连接字符串?

如果您使用 DAL(数据访问层)进行 DNN 模块开发,该模板已经为您提供了从 SQLDataProvider.cs 文件web.config 中读取连接字符串的权限

至于在 VS2010 中添加的 web.config,我认为这是模板的一个老错误,除非您升级到在 [=17 中工作得更好的最新模板,否则您将不得不忍受它=] 2013.

连接字符串存储在默认的连接字符串集合中,DNN 也提供了一些获取它的方法。这里有几个选项。

  • ConfigurationManager.ConnectionStrings["SiteSqlServer"].ConnectionString
  • DataProvider.Instance().ConnectionString - 如果使用 DAL+
  • 如果使用较旧的 DAL 方法,则从模板的 SqlDataProvider.cs 文件中获取

关于 web.config 的问题。通常,只有在您更改编译目标时,Visual Studio 才会添加它。 Visual Studio看到一个web项目,假设你需要一个web.config。你可以删除它,它不应该回来。