MEF: MSDN 杂志上的文章(9) 控制部件创建策略 ???
http://msdn.microsoft.com/zh-cn/magazine/ee291628.aspx
默認(rèn)情況下,容器中的所有部件實(shí)例都是單例,因而由在容器中導(dǎo)入它們的所有部件共享。因此,SalesOrderView 和 ViewFactory 的所有導(dǎo)入程序都將獲得同一實(shí)例。在很多情況下需要這樣,因?yàn)檫@樣便無需擁有其他組件所依賴的靜態(tài)成員。但是,有時(shí)每個(gè)導(dǎo)入程序都需要獲取自己的實(shí)例,例如用于同時(shí)在屏幕上查看多個(gè) SalesOrderView 實(shí)例。
MEF 中的部件創(chuàng)建策略可以是以下三個(gè)值之一:CreationPolicy.Shared、CreationPolicy.NonShared 或 CreationPolicy.Any。若要指定部件的創(chuàng)建策略,請(qǐng)使用 PartCreationPolicy 特性修飾部件.
?
[PartCreationPolicy(CreationPolicy.NonShared)]
[Export(typeof(ISalesOrderView))]
public partial class SalesOrderView : UserControl, ISalesOrdderView
{
??? public SalesOrderView()
??? {
??? }
}
?
還可以對(duì)導(dǎo)入設(shè)置 RequiredCreationPolicy 屬性,也可在導(dǎo)入程序端指定 PartCreationPolicy。
?
轉(zhuǎn)載于:https://www.cnblogs.com/Ken-Cai/archive/2012/06/21/2558355.html
總結(jié)
以上是生活随笔為你收集整理的MEF: MSDN 杂志上的文章(9) 控制部件创建策略 ???的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: “才分山水形”上一句是什么
- 下一篇: Apache+PHP in MAC