仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1055|回复: 15
打印 上一主题 下一主题

[学习教程] ASP.NET网页设计Windows WorkFlow Foundation进门(五)仓酷云

[复制链接]
小妖女 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:17:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
觉得J2EE好像有很多工具,比如servlet,jboss,tomcat,ejb什么的,可是微软的.NET怎么什么也没有啊?WF中的毛病处置
WF中的毛病是以异步的体例来处置的。在举动中显式或隐式的抛出非常后,事情流运转时引擎会将捕获到的非常先保留到行列中,在以后的工夫再举行处置。这与一样平常的非常处置体例分歧在于,假如一个非常在try{}语句块中被抛出,在响应的catch{}语句块中没法截获该毛病,同时该毛病也不会当即抛出给用户。
非常的原因

以下几种情形大概会发生非常


  • 原子事件超时
  • 别的范例的事件失利
  • 宿主程序经由过程ThrowActivity抛出非常
  • 用户代码毛病。当事情流挪用内部的用户代码时,CLR类大概会抛出非常,假如这类非常在用户代码中没有被处置,它们终极会以事情流非常的的表式呈现。
  • 别的范例的体系非常,比方保留失利,.net或体系非常,或数据转换毛病等
非常捕捉
毛病处置中,假如抛出非常的举动不克不及处置它,非常会被转交到它的上一级举动处置,直到它被处置为止,不然的话,事情流实例就会被事情流运转时引擎停止。
毛病处置是由FaultHandlerActivity举动来完成的。每一个FaultHandlerActivity举动都与一个.net非常范例相干联,而且它包括一系列的举动,假如毛病范例与某个FaultHandlerActivity联系关系的毛病范例婚配的话,就会实行为个FaultHandlerActivity举动。一个FaultHandlersActivity举动包括0-n个FaultHandlersActivity子举动,FaultHandlersActivity能够是任何复合举动的子举动。
WF中的毛病处置一般被视为一个反向的事情,由于它的方针是当非常产生时,打消举动中不乐成的部分的事情。FaultHandlerActivity的实行完成不克不及被以为是事件举动的乐成完成。事件举动会先被设置成毛病形态,然后是封闭形态。任何兄弟举动一样会被作废。同时,compensation也会成为不成用形态。
在事情流中利用Compensation(上面译为抵偿)
WF中关于已完成事件的抵偿形式,是对事情流中呈现的非常举行处置的历程,而且会在逻辑上打消已完成的事件。
WF抵偿有以下两种情势:
当非常没有被处置的时分,体系隐式的抵偿;
利用Compensate举动举行显式的抵偿。
在事情流中利用静态更新
静态更新使得我们能够在事情流实例运转的时分对它做出改动。做这些改动,多是因为计划时分的忽略,大概是属性的改动,举动的绑定,大概是营业逻辑失掉了增强和完美。假如你必要全部改动事情流,静态更新其实不合用,不然会招致事情流与最后的计划准绳完整分歧。在这类情形下,你应当计划一个新的事情流。
静态更新合用于事情流的单个实例。假如已有事情流实例运转,不克不及对事情流中的举行范例的改动。

你可使用静态更新来干面的事变:


  • 改动正在运转的事情流实例;
  • 改动运转时举动;
  • 改动事情流布局,比方,增加或移除一个举动;
  • 改动流程把持;
  • 为对一个已存在的举动界说一个新的前提;
  • 改动一个PolicyActivity的RuleSet;
  • 假如在事情流在已部署和运转后,必要在事情流中增添一个新的营业历程,能够经由过程增加一个新的自界说举动,或InvokeWorkflowActivity举动来完成;
  • 增加一个新的EventDrivenActivity来呼应一个新的事务,如一个附加切实其实认步骤;
对一个正在运转的事情流举行静态更新,大概会招致两个分歧的出口点:一个在事情流代码文件内,一个在事情流外,如事情流宿主程序。
事情流中的数据互换
WF通讯服务撑持在事情流服务情况内的数据互换,它使得事情流能够以办法和事务的情势,与内部体系经由过程动静举行通讯。
WF经由过程webserivce通讯来完成事情流之间的数据互换。

在事情流中利用脚色
C#中有两处地方用到new关键字,第一处也是最常见的一处是用在调用构造函数的时候,这种情况也是大家见的最多的一种。另一处是用在派生类中,作用有隐藏成员,切断继承关系等,相信第二处的用法大家明显要比第一处生疏。
海妖 该用户已被删除
沙发
发表于 2015-1-20 19:48:20 | 只看该作者
关于ASP.NET功能上,ASP.NET比微软以前的ASP(96年出现)有更强大的library,更好的稳定性。ASP.NET可以使用.NETFramework中所有组件(也就是说.NET能实现的,ASP.NET一样能实现)。
爱飞 该用户已被删除
板凳
发表于 2015-1-29 18:11:37 | 只看该作者
同时也感谢博客园给我们这个平台,也感谢博客园的编辑们做成专题引来这么多高人指点。
金色的骷髅 该用户已被删除
地板
发表于 2015-2-5 04:29:58 | 只看该作者
大哥拜托,Java在95年就出来了,微软垄断个妹啊,服务器市场微软完全是后后来者,当年都是Unix的市场,现在被WindowsServer和Linux抢下大片,包括数据库也一样。
若相依 该用户已被删除
5#
发表于 2015-2-6 08:21:07 | 只看该作者
当然我们在选择Asp.net主机是,除了要考虑服务提供商在版本是否是实时更新以外,机房的环境和配置也是非常重要的,通常选择骨干网的机房,在速度和稳定性上会非常有保证。
再现理想 该用户已被删除
6#
发表于 2015-2-7 17:00:29 | 只看该作者
由于JSP/Servlet都是基于Java的,所以它们也有Java语言的最大优点——平台无关性,也就是所谓的“一次编写,随处运行(WORA–WriteOnce,RunAnywhere)”。除了这个优点,JSP/Servlet的效率以及安全性也是相当惊人的。
莫相离 该用户已被删除
7#
发表于 2015-2-8 12:24:18 | 只看该作者
但是java靠开源打出的一片天地,特别是在微软的垄断下能打开今天的局面还是有它的生命力的。
再见西城 该用户已被删除
8#
发表于 2015-2-11 01:03:04 | 只看该作者
弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。
分手快乐 该用户已被删除
9#
发表于 2015-2-11 06:00:29 | 只看该作者
这也就是最近几年来随着各种新的后台技术的诞生,CGI应用在Internet上越来越少的原因。CGI方式不适合大访问量的应用。
精灵巫婆 该用户已被删除
10#
发表于 2015-2-23 12:18:07 | 只看该作者
是目前ASP在UNIX/Linux上的应用可以说几乎为0)。所以平台的局限性和ASP自身的安全性限制了ASP的广泛应用。
飘飘悠悠 该用户已被删除
11#
发表于 2015-2-26 06:12:57 | 只看该作者
HTML:当然这是网页最基本的语言,每一个服务器语言都需要它的支持,要学习,这个肯定是开始,不说了.
乐观 该用户已被删除
12#
发表于 2015-2-28 22:29:03 | 只看该作者
我觉得什么语言,精通就好,你要做的就是比其他80%的人都厉害,你就能得到只有20%的人才能得到的高薪。
山那边是海 该用户已被删除
13#
发表于 2015-3-3 00:02:34 | 只看该作者
ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码。
老尸 该用户已被删除
14#
发表于 2015-3-7 13:20:18 | 只看该作者
比如封装性、继承性、多态性等等,这就解决了刚才谈到的ASP的那些弱点。封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变。
变相怪杰 该用户已被删除
15#
发表于 2015-3-15 06:44:52 | 只看该作者
但是java靠开源打出的一片天地,特别是在微软的垄断下能打开今天的局面还是有它的生命力的。
蒙在股里 该用户已被删除
16#
发表于 2015-3-21 19:41:00 | 只看该作者
代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-3 14:13

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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