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

推荐订阅源

The Register - Security
The Register - Security
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
MyScale Blog
MyScale Blog
V
Visual Studio Blog
云风的 BLOG
云风的 BLOG
aimingoo的专栏
aimingoo的专栏
C
Check Point Blog
J
Java Code Geeks
大猫的无限游戏
大猫的无限游戏
L
LangChain Blog
Vercel News
Vercel News
阮一峰的网络日志
阮一峰的网络日志
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
S
Security @ Cisco Blogs
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
人人都是产品经理
人人都是产品经理
H
Hacker News: Front Page
L
Lohrmann on Cybersecurity
T
Troy Hunt's Blog
T
Threat Research - Cisco Blogs
A
About on SuperTechFans
T
Threatpost
AWS News Blog
AWS News Blog
Recent Commits to openclaw:main
Recent Commits to openclaw:main
T
Tor Project blog
Google Online Security Blog
Google Online Security Blog
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
T
Tenable Blog
W
WeLiveSecurity
博客园 - 叶小钗
K
Kaspersky official blog
Y
Y Combinator Blog
T
The Blog of Author Tim Ferriss
Hugging Face - Blog
Hugging Face - Blog
M
MIT News - Artificial intelligence
Hacker News - Newest:
Hacker News - Newest: "LLM"
Engineering at Meta
Engineering at Meta
有赞技术团队
有赞技术团队
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
S
Secure Thoughts
小众软件
小众软件
D
Docker
爱范儿
爱范儿
C
Cyber Attacks, Cyber Crime and Cyber Security
N
News and Events Feed by Topic
S
Schneier on Security
博客园 - 三生石上(FineUI控件)
D
DataBreaches.Net

博客园 - Ken Lin

Oracle VS Sql Server Asp.net常用的一些代码(转) - Ken Lin - 博客园 Sharepoint工作流任务权限问题 MOSS开发Tips WSS 扩展文件夹属性-应用场景一 内容查询Web 部件定制 How to submit data in InfoPath form services Form Services方式发布带有Managed Code的表单模板 WSS 代码执行的权限提升 用代码访问InfoPath表单内容 STSADM 进行MOSS的备份与迁移 利用SharePoint Designer更改任务列表状态栏显示 MOSS 工作流(二)自定义开发 MOSS-自定义字段类型 通过Web Part Connection 在Web Part 之间传递数据(二) 通过Web Part Connection 在Web Part 之间传递数据(一) QuickPart中文字符显示问题 MOSS SP1 解决Ajax Extension 对Webpart的兼容性问题 MOSS 工作流(一)
WebPart 生存周期
Ken Lin · 2008-01-22 · via 博客园 - Ken Lin

Just like ASP.NET controls, web parts participate in a server-side request/response sequence
that loads a page in the portal each time it is requested, and unloads the page once it is sent
to the client. Web parts, therefore, follow the same control life cycle that ASP.NET controls follow.

了解一个WebPart的生存周期,对我们在开发Webpart时很有帮助,只有你清楚地了解了这些事件执行的先后顺序
才能写出优美的代码。
当一个包含WebPart的WSS站点页面被响应请求或者是它被提交到Server端的时候,这时WebPart生存周期开始了:

OnInit  初始化,加载相关配置文件  (如WebPart任务面板上的属性,样式等配置信息)
LoadViewState 返回先前最后一次被处理的状态 (如webpart是展现,隐藏还是关闭)
CreateChildControls  创建WebPart UI ,通过Controls.Add()方法装载Web 控件 (Note:当Webpart是第一次展现的时候CreateChildControls方法发生在OnLoad方法之前,而经过一次postback之后,它发生在OnLoad方法之后)
OnLoad 

从数据库或者其他系统重新获取要展现的数据 (如获取数据库连接)

User-Generated Events 响应用户生成事件 (如Button Click)
RendenContents 生成 html output,实现最终的UI展现 (由HTMLTextWriter class 来实现) 
SaveViewState 保存控件状态 (ViewState 被序列化之后保存在一个hidden field 里)
Dispose 从内存中移除对象,释放临界资源 (如释放数据库连接)
OnUnLoad 最终完成内存清除工作