在Sharepoint中存储应用程序特定的配置数据?

Spr*_*uts 4 sharepoint web-config

我正在使用另一个主Web应用程序的功能制作Sharepoint 2010 WebPart.为了快速开发Webpart,我已经导入了主Web应用程序中使用的业务逻辑程序集.Webpart工作并从Sharepoint web.config文件中提取特定于应用程序的配置信息.

这是存储此信息的最佳位置吗?

如果不..

应用程序特定配置数据应在何处/如何存储在Sharepoint中?

配置数据包含诸如Web服务等位置之类的项目.数据只需要由系统管理员进行编辑.

谢谢

Rya*_*yan 5

Web.Config是,恕我直言,存储这种配置信息的一个可怕的地方 - 它很难部署,很难改变,特别是如果你使用多个网络前端.

建议的方法是使用PropertyBag(键/值对)通过SPFarm的.Properties,SPWeb.RootWeb(用于网站集),SPWeb,SPList等(取决于您需要的范围).

MSDN - 管理SharePoint应用程序的自定义配置选项

有一个生产就绪代码作为一部分提供

MSDN - SharePoint指导库

请参阅分层配置管理器

这使您可以以编程方式访问这些值.如果您想在不使用指导库的情况下执行此操作,那么您将使用类似以下代码的内容.

SPWeb web = SPContext.Current.Web;
if (web.Properties.ContainsKey("MyProperty"))
   string myProperty = web.Properties["MyProperty"];
Run Code Online (Sandbox Code Playgroud)

如果您希望UI允许管理员轻松设置值,请使用SharePoint Property Bag Settings之类的内容