当使用XML配置的时候,可能要给组件指定各种各样的依赖

1。简单的参数

  参数名称不区分大小写

<componentid="ping"type="Acme.Crm.Services.PingService, Acme.Crm"><parameters><pingServer>http://acme.org</pingServer><pingInterval>00:00:30</pingInterval><pingRetries>3</pingRetries><pingNotificator>${emailSender}</pingNotificator></parameters>
</component>

简单的参数是指简单的类型,如基元类型,Uri,DateTime,TimeSpan,Type,Enum 或者 服务的重写,这些参数有它们值表达(简单的名称标签)

参数类型怎么匹配呢?

Windsor不要求你指定参数的类型,而是当解析组件的时候,它将试图通过名称去匹配组件的依赖,并检查是否可以将进行转换

2.复杂的参数

  复杂的参数有多个元素组成

  例如你想指定如下的参数

[Convertible]
public class ServerInfo
{private readonly Uri address;public ServerInfo(Uri address){this.address = address;}public Uri Address{get { return address; }}public int Port { get; set; }
}

应该做如下配置

<parameters><pingServerInfo><parameters><address>http://localhost</address><port>80</port></parameters></pingServerInfo>
</parameters>

3。List参数

public class MyComponent
{public MyComponent(IEnumerable<Uri> info){Info = info;}public IEnumerable<Uri> Info { get; private set; }
}

<parameters><info><list><item>http://localhost:80</item><item>http://castleproject.org</item></list></info>
</parameters>

4.数组

<parameters><info><array><item>http://localhost:80</item><item>http://castleproject.org</item></array></info>
</parameters>

5.字典

<parameters><info><dictionary><entry key="local">http://localhost:80</entry><entry key="castle">http://castleproject.org</entry></dictionary></info>
</parameters>

转载于:https://www.cnblogs.com/lanpingwang/p/6535821.html

castle windsor学习-----XML Inline Parameters 内联参数相关推荐

  1. js学习笔记82——操作内联样式

    js学习笔记82--操作内联样式 通过js修改元素的样式 查参考手册 内联样式 读取元素的样式 看如下代码 <!DOCTYPE html> <html lang="en&q ...

  2. C++学习--static函数,内联(inline)函数, 友元 (friend) 函数

    简单总结一下C++中的各种特殊函数 1.static成员函数 定义在类体中,定义时在前面加static关键字: class Test{ static void getID(); } static 函数 ...

  3. C++学习笔记之——引用 内联函数

     本文为原创作品,转载请注明出处 欢迎关注我的博客:http://blog.csdn.net/hit2015spring和http://www.cnblogs.com/xujianqing/ 作者 ...

  4. C/C++:Windows编程—Inline Hook内联钩子(上)

    前言 先介绍下Windows中的Hook技术.Hook是Windows中提供的一种用以替换DOS下"中断"的系统机制,中文译为"挂钩"或"钩子&quo ...

  5. JS学习笔记13-操作内联样式

    一.通过JS修改元素的样式 语法: 元素.style.样式名=样式值(字符串). box.style.width="300px"; 注意:如果css样式名中含有-,这种名称在JS中 ...

  6. inline(内联函数)优缺点比较

    优点: 在内联函数被调用的地方进行代码展开,省去函数调用的时间,从而提高程序运行效率: 相比于宏函数,内联函数在代码展开时,编译器会进行语法安全检查或数据类型转换,使用更加安全: 缺点: 代码膨胀,产 ...

  7. 步步为营 .NET 代码重构学习笔记 三、内联方法(Inline Method)

    一.Inline  Method 概述 一个函数,其本体(method body)应该与其名称(method name)同样清楚易懂. 动机(Motivation) 以简短的函数表现动作意图,这样会使 ...

  8. castle windsor学习----- Services and Components 两者的定义

    转载于:https://www.cnblogs.com/lanpingwang/p/6534208.html

  9. C/C++:Windows编程—Inline Hook内联钩子(下)

    前言 在上节中介绍了 InlineHook 钩子函数,主要是通过jmp 目标地址(转为机器码E9 偏移量) 来实现的,是修改被Hook函数首地址处的 5个字节的内容.这里再介绍另一种方法,修改被Hoo ...

最新文章

  1. java字符串去掉空格
  2. 003小插曲之变量和字符串
  3. 这个Spring循环依赖的坑,90%以上的人都不知道
  4. 群体决策是如何误入歧途的
  5. [YTU]_2781( 重复字符串)
  6. arm linux 添加ntp服务,嵌入式linux添加NTP服务
  7. 洗澡或游泳等导致的耳朵进水的解决方案
  8. POJ-3067 Japan---树状数组逆序对变形
  9. Java的访问控制修饰符_访问权限修饰符_访问权限修饰词
  10. 【单片机】keil 2032
  11. 软考高级软件架构师论文——论软件架构风格
  12. 网站漏洞扫描工具AWVS_v13下载和安装
  13. 硬盘盘符拒绝访问-问题和解决办法
  14. win10计算机无访问权限,win10系统提示无internet访问权限怎么办
  15. 在生产环境中使用 Keras、Redis、Flask 和 Apache 进行深度学习
  16. android 字符串大小写转换
  17. 特种浓缩分离:生物农药超滤分离提纯过滤技术
  18. 如何做好一个让领导欣赏的下属
  19. 计算机科学区别于数学和物理学,新编大学计算机基础
  20. 人工智能技术概述与入门

热门文章

  1. grunt.config()_gruntjs api
  2. UML建模系列文章总结 (转载)
  3. Windows Server 2008常用优化设置
  4. 简(kun)单(nan)到让我开(jue)心(wang)的后缀自动机全家桶(普通后缀、广义后缀、子序列)...
  5. 用javascript 禁止右键,禁止复制,禁止粘贴
  6. Nginx配置反向代理与负载均衡
  7. 微信小程序-04-详解介绍.json 配置文件
  8. 多行匹配.+表示分组的错误
  9. C#笔记2__Char类、String类、StringBuilder类 / 正则表达式 /
  10. Unity Shaders