SP2010开发和VS2010专家"食谱"--第一章节--列表和事件接收器(7)--部署事件接收器
在之前文章中,我们看到了VS自动上传解决方案并激活。整个过程可以在输出窗口看到。
现在我们需要部署解决方案到生产环境。下面是部署说明:
Getting ready
How to do it...
1. 管理员打开VS。
2. 打开ListItemEventReceiver解决方案。
3. 右击项目打开属性。
4. 选择生成选项卡,设置配置为Release。
5. 重新生成解决方案。生成--重新生成。
6. 生成--包。这将在解决方案文件夹中生成一个.wsp文件:
7. 你可以使用stsadm命令部署该解决方案到场内任何站点。
8. 添加解决方案到解决方案库。(PS:在命令中明确写出wsp文件位置及文件名,下面两个命令同样要求。)
stsadm –o addsolution –filename ListItemEventReceiver.wsp
9. 使用命令部署解决方案:
stsadm –o deploysolution –name ListItemEventReceiver.wsp –local -allowgacdeployment
10. 使用命令安装feature:
stsadm –o installfeature –filename ListEventReceiver_Feature1\Feature.xml
11. 导航到网站操作--网站设置--管理网站功能。
12. 激活。
How it works...
当我们生成并打包解决方案时,创建了一个.wsp文件。它是包含了feature和feature要安装的项目的CAB文件。你可以重命名为.CAB,然后用解压文件打开。
.wsp包含了DLL、应用程序页和三个不同XML文档。这些XML文档提供了资源需要部署的必要信息。记事本打开manifest.xml,你可以看到它列出了应用程序页、事件接收器DLL和Feature的地址。
SharePoint中,Feature只是一个XML文件。Feature.xml包含feature的名称、ID和scope信息。名称和ID属性独特辨识Feature。ID是xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx的 GUID,x代表16进制。VS自动创建这个GUID。Feature.xml也包含了事件接收器的Elements.xml的地址。
Scope表明Feature的范围。
1. 场级别:场内所有Web应用程序均可访问feature。
2. 网站级别:网站集内所有网站均可访问feature。
3. Web级别:指定网站激活。
4. Web应用程序级别:web应用程序中所有网站可以激活。
There's more...
你可以使用PowerShell命令安装和激活feature。之前stsadm命令对应的PowerShell命令是: