知识大全 调用.net程序集中的方法

Posted 消息

篇首语:不要以为你的努力徒劳无功,权当做磨练你的意志。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 调用.net程序集中的方法相关的知识,希望对你有一定的参考价值。

  虽然Biztalk Server提供了众多的内置功能 然而在一些情况下可能还需要调用程序集中的函数 因为在 Net程序集中 可以非常方便地调用Web Service 访问数据库 另一方面 有些函数是程序集中已经写好的 为了增加软件的复用 便于软件版本的管理 使用现有的程序集也在情理之中

  本文通过一个简单实例 介绍Biztalk应用中调用程序集的方法 这个实例完成的功能 在调用Web Services一文中实现过 只不过实现的方式用所差别 一个是调用Web Service 一个是调程序集

  首先 我们创建一个MyFunction的项目 其中只包括一个的类文件class 我们要在Biztalk中调用该类的CheckUserId静态方法 class 的源程序如下  

using System;   namespace MyFunction      public class UserManager               public UserManager()                              public static string CheckUserId(string strUserId)                          if (strUserId == fengfangfang )                                    return Administrator ;                             else                                  return User ;                            

  为程序集设置强名称和发布 Net程序集到全局程序集缓存可参见将程序集安装到全局程序集缓存(GAC)中一文

  然后 创建一个Biztalk Server工程CallFunction 添加一个UserInfo xsd 其结点结构如下

  UserInfo  UserId  RoleName

  快速升级UserId和RoleName两个子字段元素 具体步骤可参见调用Web Services一文

  下面创建一个业务流程MainOrch odx 在业务流程视图中创建两个消息InMsg和OutMsg 这两个消息均使用CallFunction UserInfo消息类型 在业务流程中创建一个接收操作ReceiveInMsg 一个发送操作SendOutMsg 在二者之间创建一个消息赋值操作AssignOutMsg 同时会产生一个构造消息操作 命名为ConstructOutMsg 构造的消息为OutMsg 设置ReceiveInMsg激活为True

  为工程CallFunction添加 Net引用 找到MyFunction dll 添加到引用中 编写AssignOutMsg的表达式如下

  OutMsg = InMsg;OutMsg(CallFunction PropertySchema RoleName)= MyFunction UserManager CheckUserId(InMsg(CallFunction PropertySchema UserId));   

  创建一个接收端口InPort用于连接接收操作 一个发端端口OutPort用于连接发送操作 两个端口均使用Microsoft BizTalk DefaultPipelines XMLTransmit管道 接收地址为c:\\in\\* xml 发送地址为c:\\out\\%SourceFileName%

  

  编译并布署Biztalk Server工程CallFunction 启动CallFunction MainOrch业务流程 进行测试

  测试文件fengfangfang xml

  <ns :UserInfo xmlns:ns = >  <UserId>fengfangfang</UserId>  <RoleName></RoleName></ns :UserInfo>

  输出为

  <ns :UserInfo xmlns:ns = >  <UserId>fengfangfang</UserId>  <RoleName>Administrator</RoleName></ns :UserInfo>

  测试文件fengff xml

  <ns :UserInfo xmlns:ns = >  <UserId>fengff</UserId>  <RoleName></RoleName></ns :UserInfo>

  输出为

  <ns :UserInfo xmlns:ns = >  <UserId>fengff</UserId>  <RoleName>User</RoleName></ns :UserInfo>

  参考文章

cha138/Article/program/ASP/201311/21716

相关参考

知识大全 ASP.NET预编译Web应用程序规避调用延迟

ASP.NET预编译Web应用程序规避调用延迟  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  A

知识大全 VC.NET windows窗体应用程序调用GDAL的问题

VC.NETwindows窗体应用程序调用GDAL的问题  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下

知识大全 asp.net源程序编译为dll文件并调用过程

  使用csc命令将cs文件编译成dll的过程很多时候我们需要将cs文件单独编译成dll文件 操作如下:打开命令窗口>输入cmd到控制台>cd C:WINDOWSMic

知识大全 C#程序调用外部程序

C#程序调用外部程序  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  /*  * 编程语言Visu

知识大全 .NET简谈反射(动态调用)

.NET简谈反射(动态调用)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  我们继续C#基础知识

知识大全 Java调用外部程序技巧

Java调用外部程序技巧  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  &n

知识大全 简单介绍.Net远程方法调用研究

简单介绍.Net远程方法调用研究  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  简介    远程

知识大全 ASP.NET调用存储过程方法

ASP.NET调用存储过程方法  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  根据返回值类型的不

知识大全 ASP.NET调用.sql文件

ASP.NET调用.sql文件  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  笔者好久没有写随笔

知识大全 如何从FORM中调用REPORT程序

如何从FORM中调用REPORT程序?  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!在菜单中调用R