我在Visual Studio 2010中为我的项目定义了两个发布配置文件:一个使用ftp进行生产,另一个使用我的本地文件系统进行调试和日常开发。
我有适用于调试和发布构建配置的web.config转换。我的项目是一个Facebook应用程序,我根据部署设置应用程序ID和密码。
我希望能够强制执行一条规则,以便不能将生产ftp发布配置文件与调试版本配置一起使用。这种组合将是灾难性的,完全打破了我的生产环境。
如何执行此规则?
我对替代部署方法持开放态度,但我对现在的简单性非常满意,除了在推向生产时可能会忽略构建配置。
答案 0 :(得分:8)
除了制作之外,我不需要使用发布。您说您将Debug版本发布到其他服务器,因此我的解决方案不适合您,但它可能适用于其他没有这种需求的人。
您可以通过破坏Web.Debug.config转换来有效地强制执行发布版本。任何语法错误都可以,但我更喜欢这个更改为根标记:
<configuration_ONLY_PUBLISH_IN_RELEASE_CONFIG!! xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
当有人试图在Debug中发布时,他们会收到该标记的错误,并将其指向解决方案。
请注意,您仍然可以使用Debug构建在本地构建和运行,而不是发布。
答案 1 :(得分:2)
我已经接受了这样的结论:这是不可能的,所以显然答案是......没有
答案 2 :(得分:0)
我在这里发布了一个相关的问题:Link build configuration to a publish profile问你为什么不能这样做。希望有人知道微软是否打算改变它。