加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

一个简单的BizTalk+WebService+Mapping+Soap Adapter 的Demo

发布时间:2020-12-17 02:33:47 所属栏目:安全 来源:网络整理
导读:一个简单的 BizTalk+WebService+Mapping+Soap Adapter 的 Demo 这个例子很简单,就是演示下 webservice 在 Biztak 下的应用,把一个包含雇员的信息的报文通过 Biztalk 写入文件里。 1. ?????? 新建一个 WebService 项目 , 就叫 WebSite1 好了 . 右键项目添加

一个简单的BizTalk+WebService+Mapping+Soap Adapter Demo

这个例子很简单,就是演示下webserviceBiztak下的应用,把一个包含雇员的信息的报文通过Biztalk写入文件里。

1.?????? 新建一个WebService项目,就叫WebSite1好了.右键项目添加一个类Employee_Entity

2.?????? Employee_Entity这个类是个实体类,代码如下:

public class Employee_Entity

{

??? public Employee_Entity()

???? {

???????? //

???????? // TODO: 在此处添加构造函数逻辑

???????? //

???? }

?

??? string employee_id;

?

??? public string Employee_id

??? {

??????? get { return employee_id; }

??????? set { employee_id = value; }

??? }

??? string employee_name;

?

??? public string Employee_name

??? {

??????? get { return employee_name; }

??????? set { employee_name = value; }

??? }

??? double employee_salary;

?

??? public double Employee_salary

??? {

??????? get { return employee_salary; }

??????? set { employee_salary = value; }

??? }

}

?

3.?????? HelloWorld的代码改为如下:

??? [WebMethod]

??? public void Emplyee_Info(Employee_Entity employee)

??? {

??????? string emp_id = employee.Employee_id;

??????? string emp_name = employee.Employee_name;

??????? double emp_sal = employee.Employee_salary;

?

??????? StoreEmpInfo(emp_id,emp_name,emp_sal);

??? }

?

??? public void StoreEmpInfo(string emp_id,string emp_name,double emp_sal)

??? {

??????? System.IO.FileStream fs = new System.IO.FileStream(@"d:/123.txt",System.IO.FileMode.Append,System.IO.FileAccess.Write);

??????? string str = string.Format("EmployeeID:{0};EmployeeName:{1};Salary:{2} /n",emp_id,emp_sal.ToString());

??????? fs.Write(System.Text.Encoding.GetEncoding("GB2312").GetBytes(str),System.Text.Encoding.GetEncoding("UTF-8").GetByteCount(str));

??????? fs.Close();

??????? fs.Dispose();

}

上面这个方法很简单,就是写文件.

这个时候就是一个可以正常运行的WebServices.

?

4.?????? 新建一个空BizTalk项目,添加上面的WebService的引用,别名叫EmpService

5.?????? 添加一个新的Schema文件EmployeeInfo.xsd,节点如下:

?????

6.?????? 新建一个Mapping文件Emp_Info.btm,源文件选择刚才建立的EmployeeInfo.xsd,目标文件选择EmpService.Refernce,这个Refernce就是从WebService里的实体类中自动生成的。节点映射如下:

???

7.?????? 新建一个流程图BizTalk.EmpInfo.Orch.odx,如下

构建上面的流程图包括3MessageMessage_In,Message_Out,Message_Responses

Message_In的消息类型是你自己建立的BizTalk_WebService.EmployeeInfo

Message_Out消息类型从下拉框中选择类别Web Message Type里的BizTalk_WebService.EmpService.Service_.Emplyee_Info_request

Message_Responses消息类型从下拉框中选择类别Web Message Type里的BizTalk_WebService.EmpService.Service_.Emplyee_Info_response

其他属性:

Receive_EmpMessage= Message_In

ConstructMessage_1Message Constructed=Message_Out

Transform_EmpMappingEmp_Info.btm

Send_EmpMessage=Message_Out

Receive_responseMessage= Message_Responses

端口EmpSoap的建立:

在端口建立向导里新建立一个端口名称为EmpSoap,下一步端口类型选择已存在的端口类型,如下:

选择Web Port Type,然后下一步下一步完成。

8.?????? 这样,这个应用就可以部署测试了。

9.?????? 接受端口接受EmployeeInfo.xsd格式报文,发送端口使用SoapAdapter,配置里的Web Service URL为部署的webservice地址。

10.?? Ok,部署成功,就可以在文件里看见写入的雇员信息了。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读