我有一个 Sharepoint 2007 网站。我们使用 wsp 来部署我们的项目。我们可以部署 dll、用户控件、功能,但我不知道如何在 web.config 中包含新行。

更改 web.config 的可能方法是什么?

另一件事,如何在 wsp 中包含资源 (resx)?

有帮助吗?

解决方案

手动编辑多服务器场中的web.config是个坏主意。确保web.config文件在每个WFE上保持同步将很快成为一场噩梦。

使用SPWebConfigModification类管理服务器场中的web.config更改是一个好主意,因为更改将保留在SharePoint配置数据库中,并自动推送到服务器场中的每个服务器。

话虽如此,对班级进行编码可能会很痛苦。幸运的是,有一个免费提供的非常好的前端,在管理中心为您提供配置屏幕以添加/删除web.config更改。

其他提示

通过解决方案添加安全控制条目有一种非常简单的方法。添加到manifest.xml的以下代码段将对web.config文件进行相关修改。要设置其他值,您应该使用 SPWebConfigModification 类。

<Assemblies>
  <Assembly ...>
     <SafeControl Namespace=".." Assembly="..." Type="..." Safe="True" />
  </Assembly>
  ....
</Assemblies>

此外,如果您考虑使用web.config中的appSettings作为您的站点配置值,您实际上也有其他选项。由于各种原因,web.config可能并不总是放置您的值的最佳位置 - 至少如果“超级用户”等应该能够在以后更改它们。为此,您可以改为使用配置存储功能,该功能还可以跨服务器场扩展,用于多个前端服务器等:

http://www.sharepointnutsandbolts.com /2008/05/introducing-sharepoint-config-store-for.html

关于web.config文件...

Web.config是一个XML文档,其中包含Web应用程序的配置设置。它位于Web应用程序的根目录中,因此对于SharePoint,它通常位于文件夹C:\ Inetpub \ wwwroot \ wss \ VirtualDirectories \ SharePoint80中,其中SharePoint80是Web应用程序的名称。

只要您按正确的顺序保留标记和部分,手动对web.config文件进行编辑是安全的。请参阅这篇文章

也可以以编程方式对其进行更改, this帖子应该告诉你如何。

希望这有帮助。

我认为当您有多个服务器时,直接操作 web.config 可能会变得很棘手。如果您的整个安装仅在几台服务器上,那么这样做可能比尝试通过代码进行简单的 web.config 更改更容易。

另外,直接操作 web.config 可确保您的源代码管理系统中拥有完整的 web.config。如果您使用 API 进行更改,您在源代码管理中所拥有的只是一堆您希望没有错误的 C# 代码!

我建议不要乱用任何手动修改代码。相反,通过将修改放在12 \ Config目录中来做“SharePoint方式”如Microsoft的SharePoint文档中所述

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top