您的位置:首页 > 移动开发 > Objective-C

[浪子学编程][MS Enterprise Library]ObjectBuilder之创建策略祥解(一)

2006-04-28 16:13 369 查看
ObjectBuilder之创建策略祥解()

Written by 浪子 [walkingboy.cnblogs.com]

前言:[/b][/b]

ObjectBuilder已经默认制定了很多创建策略,可能看到这么多策略加上整个地方架构满天飞,反而搞不清楚如何去应用ObjectBuilder创建我们需要的对象了。研究它的原理只是为了更好的发挥它的功效,本系列将详细解析ObjectBuilder中的所有默认创建策略的原理以及应用:

1[/b]、类型映射策略[/b](TypeMappingStrategy)[/b]:
[/b][/b]

上文 讲过,策略的具体行为都是由他们各自所对应的方针来决定的。类型映射策略也有其映射方针:

public interface ITypeMappingPolicy : IBuilderPolicy

具体方针(TypeMappingPolicy):

public class TypeMappingPolicy : ITypeMappingPolicy

创建策略中的类型映射应用:[/b]

public override object BuildUp(IBuilderContext context, Type t, object existing, string id)

应用举例:[/b][/b]

class Program

//抽象基类
public abstract class MyAbstractClass

//具体实现类
public class MyConcreteClass : MyAbstractClass

我们可以看到结果会输出:

MyConcreteClass

可见我们通过指定方针就可以轻松的将抽象类或者接口类映射成为具体的实例类,而且这种转换是安全的

//检测是否能正常转换这两个类型
Guard.TypeIsAssignableFromType(t, result.Type, t);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: