ConfigurationCodeGenerator 是一种工具,可用于向配置系统公开自定义通道实现。 这使自定义通道的用户可以通过使用 .config 文件来配置您的通道,就像配置系统提供的绑定(如 NetTcpBinding
)或使用 TcpTransportBindingElement
的自定义绑定一样。
当您编写自定义通道并使用新的BindingElement
或Binding
将其暴露给编程模型时,必须创建一组类,以便使用 .config 文件对BindingElement
或Binding
进行配置。 可以使用 ConfigurationCodeGenerator 工具生成这些类并增强客户体验。
生成工具
要生成解决方案,请按照生成 Windows Communication Foundation 示例中的说明进行操作。
生成解决方案将生成一个文件:ConfigurationCodeGenerator.exe。 文件SampleRun.cmd有一个示例命令行,演示如何使用此工具生成 传输:UDP 示例的类。
运行此工具
如果同时具有自定义
BindingElement
类型和自定义Binding
类型,请在命令提示符处键入以下内容:ConfigurationCodeGenerator.exe /be:YourCustomBindingElementTypeName /sb:YourCustomStdBindingTypeName /dll:TheAssemblyWhereTheseTypesAreDefined
如果只有自定义
BindingElement
类型,请键入以下内容:ConfigurationCodeGenerator.exe /be:YourCustomBindingElementTypeName /dll: TheAssemblyWhereThisTypeIsDefined
如果只有自定义
Binding
类型,请键入以下内容:ConfigurationCodeGenerator.exe /sb:YourCustomStdBindingTypeName /dll:TheAssemblyWhereThisTypeIsDefined
该命令为
BindingElement
生成三个 .cs 文件(如果指定了 /be: 选项),为Binding
生成五个 .cs 文件(如果指定了 /sb: 选项),以及一个 .xml 文件。如果您使用了 /be 选项,其中一个 .cs 文件将为您的绑定元素实现
BindingElementExtensionSection
。 此代码将您的BindingElement
公开给配置系统,使其他自定义绑定可以使用您的绑定元素。 其他文件具有表示默认值和常量的类。 这些文件有//TODO
注释,提醒你更新默认值。如果指定了 /sb 选项,这两个 .cs 文件分别实现了
StandardBindingElement
和StandardBindingCollectionElement
功能,这样就将标准绑定暴露给配置系统。 其他文件具有表示默认值和常量的类。 这些文件有//TODO
注释,提醒你更新默认值。如果您指定了 /sb: 选项,CodeToAddTo<YourStdBinding>.cs 文件中包含的代码必须手动添加到实现您的标准绑定的类中。
必须将 SampleConfig.xml 文件中包含的配置代码添加到注册前面步骤 1 或步骤 2 中定义的处理程序的配置文件中。