C# 何时在Visual Studio for SharePoint解决方案中使用版本配置?

C# 何时在Visual Studio for SharePoint解决方案中使用版本配置?,c#,visual-studio,sharepoint,configuration,C#,Visual Studio,Sharepoint,Configuration,我主要使用Visual Studio 2010为SharePoint 2010开发SharePoint解决方案。 常规的SharePoint解决方案开发主要输出程序集,这些程序集部署到GAC并由其他人员(页面、Web部件、控件等)使用。从中,我发现发布配置包括c代码优化,而不包括调试元数据。因此,我认为它仅适用于高负载零件的生产。而且它只适用于稳定的代码——我们可以用调试器连接到生产服务器上的发布构建程序集吗 所以主要的问题是:何时使用调试或发布,以及它能带来哪些好处?您的问题实际上不是特定于S

我主要使用Visual Studio 2010为SharePoint 2010开发SharePoint解决方案。 常规的SharePoint解决方案开发主要输出程序集,这些程序集部署到GAC并由其他人员(页面、Web部件、控件等)使用。从中,我发现发布配置包括c代码优化,而不包括调试元数据。因此,我认为它仅适用于高负载零件的生产。而且它只适用于稳定的代码——我们可以用调试器连接到生产服务器上的发布构建程序集吗


所以主要的问题是:何时使用调试或发布,以及它能带来哪些好处?

您的问题实际上不是特定于SharePoint的,因为SharePoint和发布/调试版本没有什么特别之处

这两个选项之间的主要区别是——正如您所建议的那样——在发布模式下启用优化并且不发出调试符号

如果没有这些调试符号,您将无法在生产站点上调试代码-无论如何,您都不想在生产站点上调试代码,对吧

最佳做法如下:

  • 为所有开发目的使用调试。如果您有分阶段部署(应该),那么应该将调试版本部署到集成以及客户测试环境中。这样,您可以始终查找每个系统上的错误
  • 使用发布模式进行生产。对于我们的分阶段部署:仅提供在发布模式下编译的客户程序集
注意:“优化”代码和非优化代码之间的速度差在大多数情况下可以忽略不计。大多数时候更多的是“你应该这样做”,而不是“如果你不这样做,事情就会破裂”