2009-06-19 80 views
3

在具有数据库依赖性的WSS3或MOSS2007中部署web部件的最佳方式是什么? .wsp是否应该包含用于创建数据库的代码,是否应该将.wsp封装到处理数据库创建的另一个安装程序中,还是应提供两个不同的包以允许管理员处理后端创建?部署依赖于数据库存储的web部件

回答

6

那么,我更喜欢SharePoint管理中心从SharePoint管理页面创建数据库的方式。只要看看SharePoint如何处理新Web应用程序的创建,在这些新Web应用程序中要求您命名数据库服务器和SharePoint内容数据库的名称。

换句话说,我会选择仅WSP部署。 WSP应包含一个数据库配置页面(一个ASPX页面)以及一个场级功能,用于安装到管理中心内的页面的custom action链接。从Central Admin执行它的美妙之处在于,它运行在具有在SQL服务器上创建新数据库的权限的上下文中。因此,您不需要向用户询问数据库服务器的登录名和密码。 配置页面应在成功创建数据库后,在SharePoint配置页面中使用SPPersistedObject类的自定义衍生物来保留连接信息。 Web部件可以依次读取这些设置以连接到数据库。

MSI安装程序应该在设计SharePoint应用程序时避免在我看来。

+0

+1:这是个好主意。保持与SP一致。 – 2009-06-19 12:16:11

0

你的webpart瞄准什么样的客户端?

我想这可能是值得稍微灵活的方法,并考虑多种方法安装您的web部件。

因此对于没有专用DBA的人来说,最好有一个.wsp。 (虽然这应该是足够能力去处理超级用户的安装。)

或者走了的.wsp和MSI(甚至脚本),这将使安装它究竟是如何安装在 更多的控制。我喜欢这种方法,而不是仅限于.wsp的方法。)