.NET CORE 创建webservice以及.NET CORE调用webservice

一、服务端添加引用,SoapCore,版本是:1.1.0.10

 

 

二、创建DTO类

复制代码
    
    [DataContract]
    public class CallRequest
    {


        /*
         
         接口规范为
(ip不为空的情况):
{"YSYHID":"26036","YSXM":"曾礼特","PBID":"794961","BRBH":"00015501296380","ZKID":"42","FJID":"89","FJMC":"2号诊室","FZYYID":"1260503",
        "CHBZ":"0","JZRQ":"","ZSPIP":"192.168.1.100"}

(ip为空的情况):
{"YSYHID":"26036","YSXM":"曾礼特","PBID":"794961","BRBH":"00015501296380","ZKID":"42","FJID":"89","FJMC":"2号诊室","FZYYID":"1260503","CHBZ":"0","JZRQ":"","ZSPIP":""}
         
         */

        /// <summary>
        /// 呼叫医生ID
        /// </summary>
        [DataMember]
        public string YSYHID { get; set; }


       /// <summary>
       /// 医生姓名
       /// </summary>
        [DataMember]
        public string YSXM { get; set; }

        /// <summary>
        /// 排班id
        /// </summary>
        [DataMember]
        public string PBID { get; set; }


        /// <summary>
        /// 病人编号
        /// </summary>
        [DataMember]
        public string BRBH { get; set; }

        /// <summary>
        /// 科室代码
        /// </summary>
        [DataMember]
        public string ZKID { get; set; }


        /// <summary>
        /// 房间ID
        /// </summary>
        [DataMember]
        public string FJID { get; set; }

        /// <summary>
        /// 房间名称
        /// </summary>
        [DataMember]
        public string FJMC { get; set; }


       /// <summary>
       /// 分诊预约ID
       /// </summary>
        [DataMember]
        public string FZYYID { get; set; }


        /// <summary>
        /// 重呼标记
        /// </summary>
        [DataMember]
        public string CHBZ { get; set; }


        /// <summary>
        /// 就诊日期
        /// </summary>
        [DataMember]
        public string JZRQ { get; set; }



        /// <summary>
        /// 诊室屏IP
        /// </summary>
        [DataMember]
        public string ZSPIP { get; set; }



    }
复制代码

 

三、服务端创建接口,用于暴露,

    [ServiceContract]
    public interface ICallRequestService
    {

        [OperationContract]
        CallRequest Call(CallRequest s);

    }

四、创建实现类,

复制代码
 public class CallRequestService : ICallRequestService
    {
        public CallRequest Call(CallRequest s)
        {
            return new CallRequest() { 
             BRBH ="9999999999999"
            };
        }
    }
复制代码

 

五、注入服务

1
services.TryAddSingleton<ICallRequestService, CallRequestService>();

 

六、服务端添加中间件

        var binging = new BasicHttpBinding();
            binging.ReaderQuotas.MaxStringContentLength = int.MaxValue;

            app.UseSoapEndpoint<ICallRequestService>("/CallRequestService.asmx", binging, SoapSerializer.XmlSerializer);

 

 

七、创建客户端,使用mvc框架

 

 

 

 

八、添加webservice引用,一定要联网,不然无法配置,发现服务,添加服务

 

 

 

九、调用服务,并且返回结果

复制代码
   public async void OnGet()
        {


            ServiceReference1.CallRequestServiceClient callRequestServiceClient = new ServiceReference1.CallRequestServiceClient();
            ServiceReference1.CallRequest callRequest = new ServiceReference1.CallRequest() {

                BRBH = "666666"

            };
            var r =await  callRequestServiceClient.CallAsync(callRequest);

            int a = 0;
        }
复制代码

 

posted on   topguntopgun  阅读(2668)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示