惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

N
News | PayPal Newsroom
IT之家
IT之家
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
大猫的无限游戏
大猫的无限游戏
GbyAI
GbyAI
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
L
LangChain Blog
S
SegmentFault 最新的问题
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Project Zero
Project Zero
P
Privacy & Cybersecurity Law Blog
V
Vulnerabilities – Threatpost
博客园 - 三生石上(FineUI控件)
Recorded Future
Recorded Future
The Hacker News
The Hacker News
C
CXSECURITY Database RSS Feed - CXSecurity.com
C
CERT Recently Published Vulnerability Notes
宝玉的分享
宝玉的分享
aimingoo的专栏
aimingoo的专栏
T
Tor Project blog
T
The Exploit Database - CXSecurity.com
Schneier on Security
Schneier on Security
H
Help Net Security
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
M
MIT News - Artificial intelligence
W
WeLiveSecurity
P
Proofpoint News Feed
A
About on SuperTechFans
S
Securelist
I
InfoQ
G
Google Developers Blog
博客园 - 司徒正美
博客园 - 叶小钗
Latest news
Latest news
F
Fortinet All Blogs
G
GRAHAM CLULEY
腾讯CDC
Jina AI
Jina AI
S
Schneier on Security
I
Intezer
V
Visual Studio Blog
美团技术团队
V2EX - 技术
V2EX - 技术
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
The Cloudflare Blog
Microsoft Security Blog
Microsoft Security Blog
Blog — PlanetScale
Blog — PlanetScale
P
Proofpoint News Feed
罗磊的独立博客
Y
Y Combinator Blog

博客园 - SuperBowl

新蛋(成都)急聘.net 高级软件工程师 NetTiers模板中各个选项的一些解释 敏捷实践--个人与过程 敏捷实践--持续集成工具CC.net配置 .net4.0 & VS2010 敏捷实践--用户故事和用例的选择 .Net 常用开发工具 敏捷实践--准备 敏捷实践--启航 敏捷软件开发之持续集成 5,Composite UI Application Block (CAB) WorkSpace介绍 4,Composite UI Application Block (CAB) FormShellApplication介绍 (转)2007年IT薪资调查 IT人更关注职业前途 3,Composite UI Application Block (CAB) 结构介绍 2,Composite UI Application Block (CAB) 概念和术语 1,Composite UI Application Block (CAB) 介绍 很想提笔写点什么 读完“影响力” Hello ,Atlantic
6,Composite UI Application Block (CAB) WorkItem介绍
SuperBowl · 2008-02-19 · via 博客园 - SuperBowl
 

前面已经说到,CAB框架中除了提供了强大的支持功能,如依赖注入,事件机制,界面组合显示,还有一个专门封装业务逻辑的WorkItem。企业应用系统其实主要就是企业业务的自动化实现,一个应用框架提供的支持功能都只是为了更好地为业务服务。下面就来看看CAB中的WorkItem是如何封装业务用例的。

首先看看WorkItem都包含哪些元素?

WorkItem的属性列表中我们可以看出,WorkItem中支持命令和事件,同时WorkItem可以嵌套,通过Parent进行关联,通过RootWorkItem可以获取顶层WorkItem,开发人员可以利用这一特性来组织自己业务用例和划分业务用例的粒度。WorkItem中使用State来共享信息,在同一个WorkItem容器中的对象可以共享访问这个信息。 WorkItem容器中的对象对其中的Service都可以访问。

WorkItem通过调用Run方法进行启动,调用这个方法的时候会调用他的OnRunStarted方法,一般我们自定义了一个WorkItem,如果有需要可以重载其OnRunStarted方法来自定义其启动逻辑。Run方法调用后会触发RunStarted事件。

一般我们会借助WorkItem提供的特性,采用MVC的模式进行业务用例的封装。使用SmartPart作为用户交互的UI显示部分(View),创建一个控制类来进行业务逻辑的封装(Controller),然后将业务数据存放于内存实体中(Model)。用户界面和内存实体采用绑定的方式关联起来。

这就是典型的MVC模式的应用,我们来看看他的初始化和用户交互过程中的操作是如何进行的?

初始化:

1,应用系统加载WorkItem,WorkItem将用户界面在WorkSpace中进行显示
    2,用户界面加载,调用控制逻辑进行初始数据的处理和获取
    3,控制逻辑获取初始数据
    4,控制逻辑将数据存放于内存实体中
    5,控制逻辑将数据与用户界面进行绑定,界面会自动根据绑定的数据源进行初始化显示

用户交互:

1,用户操作用户界面,调用相应控制逻辑
      2,控制逻辑进行业务处理,进行相关服务或数据库访问
      3,控制逻辑修改内存实体中的数据
      4,由于数据与界面绑定,数据的变化直接反应到界面显示。