如何为BizTalk 2020中的Oracle UDT构建.DLL文件?
为BizTalk 2020生成Oracle UDT相关DLL的流程及文档说明
生成UDT对应DLL的步骤
BizTalk处理带用户定义类型(UDTs)的Oracle存储过程时,Consume Adapter向导不会自动生成UDT的DLL,需通过Oracle Data Provider for .NET (ODP.NET)工具手动生成,具体流程:
环境准备
- 安装与BizTalk 2020兼容的ODP.NET版本(优先选择ODP.NET Managed Driver,适配Oracle 12c及以上版本)
- 打开对应BizTalk 2020的Visual Studio开发者命令提示符(如VS2019的Developer Command Prompt)
生成UDT的.NET代码
- 导航到ODP.NET的安装目录(例如
C:\app\<你的用户名>\product\<Oracle版本>\client_1\odp.net\bin\4) - 运行
UDTGenerator.exe生成UDT的C#/VB代码,示例命令:UDTGenerator.exe /username:SCOTT /password:TIGER /dataSource:ORCL /schema:HR /type:EMPLOYEE_TYPE /outputFile:EmployeeUDT.cs /language:C# - 替换参数为你的Oracle环境信息:账号密码、TNS名称、UDT所属schema、UDT名称、输出代码路径
- 导航到ODP.NET的安装目录(例如
编译生成DLL
- 创建一个.NET Framework 4.8的类库项目(BizTalk 2020依赖该版本)
- 将生成的UDT代码文件加入项目,引用ODP.NET的对应程序集(如
Oracle.ManagedDataAccess.dll) - 编译项目,得到包含UDT类的DLL
BizTalk配置
- 将DLL复制到BizTalk服务器的自定义程序集目录(如
C:\Program Files (x86)\Microsoft BizTalk Server 2020\CustomAssemblies) - 在WCF-Custom发送端口的绑定属性中,设置
UserAssembliesLoadPath为该DLL所在的文件夹路径 - 重启BizTalk主机实例使配置生效
- 将DLL复制到BizTalk服务器的自定义程序集目录(如
相关文档位置
- Microsoft Docs中BizTalk Server 2020 Oracle适配器的「处理用户定义类型」章节,详细说明了UDT的配置和类生成流程
- Oracle官方文档中关于
UDTGenerator工具的参数说明和使用指南
内容的提问来源于stack exchange,提问作者NealWalters
相关产品推荐
相关产品推荐

