0

根据先前关于 Visual Studio 配置的问题,无法使用 Visual Studio 的配置管理器为 ASP.net 网站项目创建不同的配置。

对于普通项目,我们有 #if 指令根据我们是在调试还是在生产中切换某些服务器或数据库变量。这不适用于网站。

例如,在定义网站后端服务器连接的类(在 App_Code 中)中,如果您想在本地运行调试服务器,可能会有这样的代码块覆盖 web.config 中的生产值机器:

#if DEBUGLOCAL
           ServerProperties.ServerIP = "localhost";
           ServerProperties.DataContextIP = "localhost";
#endif

这不起作用,因为网站没有“本地调试”配置,因此没有定义 DEBUGLOCAL。

您是否找到了解决此类问题的好方法?此外(我希望)重构所有内容,以便所有这些引用都存在于类库项目中?

ETA:Web 部署项目可以在这里提供帮助吗?

4

2 回答 2

1

也许在 web.config 中进行一些交换的 Web 部署项目可能会有所帮助?另一个想法是在 web.config 中有一个连接字符串,它从可以存在于每个环境中的预先指定的数据库中提取各种值,以便轻松更改设置而无需触及任何文件。

于 2009-01-14T18:49:50.960 回答
0

另一种选择可能是将网站升级为 Web 应用程序

现在进行过渡可能需要做很多工作,但是如果您决定使用网站或 Web 应用程序,那么拥有配置的能力可能有助于调整规模。

于 2009-01-15T18:14:46.520 回答