【问题标题】:SharePoint - Connection String dialog box during FeatureActivated eventSharePoint - FeatureActivated 事件期间的连接字符串对话框
【发布时间】:2010-09-05 17:58:58
【问题描述】:

有谁知道在激活或安装共享点功能时是否可以向用户/管理员显示提示?

我正在编写一个自定义 webpart,它正在连接到一个单独的数据库,我希望允许管理员在安装 .wsp 文件或激活该功能时选择或输入连接字符串。

我正在查看 FeatureActivated 事件并考虑使用 SPWebConfigModification 类将连接字符串实际写入场中的 web.config 文件。

我不想手动编辑 web.configs 或将字符串硬编码到 DLL 中。

如果您有其他方法在 sharepoint 中处理连接字符串,我也会对它们感兴趣。

【问题讨论】:

    标签: sharepoint connection-string


    【解决方案1】:

    很遗憾,无法切换到可以通过功能激活过程获取用户的屏幕。给你几个cmets:

    1. 我假设每次安装的连接字符串都会有所不同,因此您无法将其直接包含在解决方案中。
    2. 我假设您无法在安装过程中以编程方式构建它。

    因此,您需要某种方式来获取用户输入。这里有几个选项:

    1. 它可以是 Web 部件属性,但这意味着每次添加 Web 部件时都要设置它,然后您需要单独维护这些设置。
    2. 您可以构建自己的 _layouts 设置屏幕(好帖子:http://community.zevenseas.com/Blogs/Robin/archive/2008/03/17/lcm-creating-custom-application-page-and-using-the-propertybag-more-detailed.aspx),然后用户可以从那里维护属性,将其存储在 Web 属性包或 Web.Config 中。我尽量避免使用 Web.Config,但如果您确实希望走这条路,那么请确保您使用 SPWebConfigModification 类(阅读这篇精彩的博客:http://www.crsw.com/mark/Lists/Posts/Post.aspx?ID=32
    3. 最后,我经常使用的一种技术是将配置信息存储在 SharePoint 列表中。 Chris O'Brien 在这里有一个很棒的框架:http://www.codeplex.com/SPConfigStore

    希望对您有所帮助, 丹尼尔

    【讨论】:

      【解决方案2】:

      听起来不错。我会看看这些可能的解决方案。

      我认为 #1 不会起作用,因为我在一个解决方案中部署了多个 webpart,它们都使用相同的 connectionString。

      #3 听起来是一个非常干净的解决方案。我看到配置项被缓存,所以看起来如果我需要存储连接字符串,每次我需要该字符串时都不会被 SP 查找击中。

      While searching for a solution I did stumble across another method.

      如果你仔细研究他们的代码,我看起来他们已经创建了一个接受应用程序特定值的安装程序,将这些值添加到 FeatureTemplate.xml 文件中,并将它们传递给 Reciever 中的 SPFeatureReceiverProperties 对象。

      我正要开始使用这种方法,但我认为#3 会更好。

      谢谢你, 基思

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-03-10
        • 1970-01-01
        • 2011-01-13
        • 2019-04-17
        • 1970-01-01
        • 2011-09-04
        • 2011-04-16
        • 1970-01-01
        相关资源
        最近更新 更多