Wal*_*eza 5 c# sharepoint sharepoint-2010
我目前正在为SharePoint 2010开发一项新功能.除了部署我的功能外,我还想<appSettings/>在SharePoint应用程序web.config中的部分添加一些设置.
我在MSDN上找到了有关在部署期间添加补充.config文件的一些信息,但我无法使其工作.这种方法对我来说似乎是最干净的,因为我可以将所有更改放在一个文件中,并将其与我的应用程序的其余部分一起部署.
我已按webconfig.MyApp.xml文档中的建议创建了一个文件,并将其部署到该<SharePoint 14 hive>\Config文件夹,但我的更改未传播到我的应用程序web.config.
以下是我的补充配置文件中的示例代码段.
<?xml version="1.0" encoding="utf-8" ?>
<actions>
<add path="configuration/appSettings">
<add key="MyFeatureKey" value="MyFeatureValue" />
</add>
</actions>
Run Code Online (Sandbox Code Playgroud)
我想避免手动编辑web.config,因为在SharePoint维护期间这些更改很容易丢失等.
如果您对部署web.config更改的备用可维护方法有任何想法,我的耳朵是开放的.
更新:
到目前为止给出的答案很棒,我相信它们会起作用.但我正在寻找一种解决方案,可以在我的单一内部打包WSP并部署,无需任何额外步骤.
正如Russ和breischl所建议的那样,您可以使用SPWebApplication对象的WebConfigModifications属性.要将其与您的功能一起部署,请将您的代码放入功能接收器中.这样,您可以在安装该功能时自动进行web.config修改.
在功能接收器中,不要忘记在SPWebApplication对象上调用ApplyWebConfigModifications()属性.
示例:http: //weblogs.asp.net/wesleybakker/archive/2009/01/21/web.config-modifications-with-a-sharepoint-feature.aspx
您可以将功能和功能接收器组件打包在一个wsp包中.