设为首页 收藏本站
查看: 916|回复: 0

[经验分享] SharePoint 2010工作流系列(4):初窥Visual Studio 2010的SharePoint工作流功能

[复制链接]

尚未签到

发表于 2015-9-24 09:42:29 | 显示全部楼层 |阅读模式
  介绍完针对IT人员的SharePoint Designer 2010和针对业务人员的Visio 2010,我们再来看一下Visual Studio 2010为SharePoint开发人员提供了哪些便利。
DSC0000.png
  在Visual Studio 历代版本中,Visual Studio 2010的变化算是比较大的。就连同时发布的.NET Framework 4.0也将CLR从2.0一下子升级到了4.0。
DSC0001.png
  在新建项目对话框中可以看出,Visual Studio 2010仍然支持SharePoint 2007项目,不过只有工作流项目。而在SharePoint 2010分类中,却多出了如此多的内容,这便是全新的Microsoft SharePoint Development Tools。
  由于SharePoint 2010的工作流仍然基于WF 3.5,所以我们仍然可以并且只能创建Sequential和State Machine两种工作流(SharePoint 2010没有使用WF 4.0真是件让人扫兴的事情)。除了这两种经典的工作流类型之外,Visual Studio 2010还能够导入由SharePoint Designer 2010设计的Reusable Workflow。
  SharePoint 2010引入了一种新的解决方案类型,叫做sandboxed solution。SharePoint网站管理员可以不经过服务器管理员之手,直接将解决方案部署到网站集范围内,而且该解决方案的操作范围也被限制在部署它的网站集中。这极大地方便了简单解决方案的部署和使用,相信将来SharePoint 2010 Online推出之后,这种解决方案一定会大放异彩。不过SharePoint工作流并不支持这种部署方式,我们只能老老实实地将它设计成为一个farm solution,如下图所示:
DSC0002.png
  
  
  Visual Studio 2010也能够创建SharePoint 2010新增的工作流类型:Site Workflow,如下图所示:
DSC0003.png
  Visual Studio 2010并没有像SharePoint Designer那样大量新增活动,相比上一版本,只增加了如下图所示的几个活动:
DSC0004.png
  此外,由于Site Workflow根本没有和具体的列表项绑定,所以不能使用和列表项相关的OnWorkflowItemChanged和OnWorkflowItemDeleted两个活动,其余所有活动都和List Workflow相同,这一点和SharePoint Designer 2010相似。
  活动的变化暂时先看到这里,下面我们来看看其他变化,下图展示了Visual Studio 2010的SharePoint工作流解决方案资源管理器:
DSC0005.png
  我们看到两个崭新的文件夹:Features和Packages。Microsoft SharePoint Development Tools提供了在组织解决方案内的Feature和Package的能力,通过这一功能,我们可以以图形化的方式来组织和管理Feature和Package,十分方便。下图展示了崭新的Feature编辑器:
DSC0006.png
  在下图所示的添加项对话框中,我们可以看到,除了Sequential Workflow和State Machine Workflow之外,和工作流相关的可添加项还有Workflow Association Form和Workflow Initiation Form。
DSC0007.png
  这两种页面的格式都是ASPX,但很可惜的是并没有提供可视化设计支持。我宁愿相信这也是beta版本的原因,因为Visual Studio 2010新增的Visual Web Part都能够使用可视化的方式来设计了。不管怎么说,我们终于可以比较方便的为工作流设计基于ASP.NET的启动页面和关联页面了。
  当然,我们仍然可以使用InfoPath表单作为工作流的启动页面和管理页面。和上一版本一样,我们需要手工修改Workflow.xml文件,添加必要的宿主页面、内容类型ID和表单URN,Visual Studio 2010并没有替我们完成这部分内容(令人不解的是,为什么不把宿主页面和那个长长内容类型ID也像表单URN的相关元素一样注释起来,以供我们更加方便地使用呢?)。
  我们从上面的解决方案资源管理器中看到的Elements.xml就是以前的Workflow.xml,并且由于新增了Site Workflow,Elements.xml的MetaData元素中也相应地增加了一个AssociationCategories元素,用以标识工作流时List Workflow还是Site Workflow。
  本来想尝试用SharePoint Designer 2010和Visio 2010设计一个包含它们特有的操作(活动)的Reusable Workflow,然后保存为WSP模板,再使用Visual Studio 2010导入,看看会发生些什么。
  结果可耻的失败了数次,唯一的收获就是发现如果Visio 2010设计的工作流流程图如果包含了那四个神秘的权限操作的话,虽然导入到SharePoint Designer 2010里可以正常识别并且设置属性,但是在检查错误的时候就会提示该活动放错了位置,只要将其移动到SharePoint Designer 2010新增的Impersonation Step中,错误就会得以解决。
  我猜想是因为设置权限这种操作本身就需要更高的权限才能执行,而SharePoint 2010的工作流貌似已经是以启动工作流的用户权限来运行了,只有其中的Impersonation Step才会以工作流作者(代表着更高的权限?)的权限去执行。
  另外播放一条小道消息,Office 2010 beta马上就要公开发布了,我已经提前拿到了这一版本。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-118053-1-1.html 上篇帖子: [SharePoint 2010]一个Silverlight的网页访问计数器 下篇帖子: SharePoint 2010工作流系列(3):初窥Visio 2010中SharePoint工作流功能
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表