zoukankan      html  css  js  c++  java
  • WCF各个Service之间共享数据

    为了实现cache存储验证用户身份信息,减少通过数据库验证的次数,需要在wcf各个服务之间建立共享数据区。
    namespace WcfService1
    {
        public static class Class1
        {
            public static string appName = "";
        }
    }
    namespace WcfService1
    {
        // 注意: 使用“重构”菜单上的“重命名”命令,可以同时更改代码、svc 和配置文件中的类名“Service1”。
        // 注意: 为了启动 WCF 测试客户端以测试此服务,请在解决方案资源管理器中选择 Service1.svc 或 Service1.svc.cs,然后开始调试。
        public class Service1 : IService1
        {
            public string GetData()
            {
                return Class1.appName;
            }
            public void SetData()
            {
                Class1.appName="1";
            }
        }
    }
    namespace WcfService1
    {
        // 注意: 使用“重构”菜单上的“重命名”命令,可以同时更改代码、svc 和配置文件中的类名“Service2”。
        // 注意: 为了启动 WCF 测试客户端以测试此服务,请在解决方案资源管理器中选择 Service2.svc 或 Service2.svc.cs,然后开始调试。
        public class Service2 : IService2
        {
            public string GetData()
            {
                return Class1.appName;
            }
            public void SetData()
            {
                Class1.appName = "2";
            }
        }
    }

     private void button1_Click(object sender, EventArgs e)
            {
                Service1Client srv1 = new Service1Client();
                srv1.SetData();
            }
     
            private void button2_Click(object sender, EventArgs e)
            {
                Service1Client srv1 = new Service1Client();
                MessageBox.Show(srv1.GetData());
            }
     
            private void button3_Click(object sender, EventArgs e)
            {
                Service2Client srv2 = new Service2Client();
                srv2.SetData();
            }
     
            private void button4_Click(object sender, EventArgs e)
            {
                Service2Client srv2 = new Service2Client();
                MessageBox.Show(srv2.GetData());
            }
    通过客户端可以发现可以实现数据共享。
  • 相关阅读:
    idea添加自定义插件仓库 灵狐插件、阿里代码规约插件安装&idea插件推荐
    常用版本名称含义:SNAPSHOT->alpha->beta->release->GA等
    Ambari Centos7离线安装教程详细指导(参考)
    JDK11变化详解&JDK8升级JDK11详细指南
    idea jdk8、jdk9、jdk11、jdk12并自由切换
    idea java EclipseFormatter代码格式化模板
    java基础对象浅复制和深复制(基础知识)
    斐讯路由器L(联)B(壁)K-码兑换包安全下车通道(图文教程)
    SipDroid +miniSIPServer搭建SIP局域网语音通话(一)
    Android Studio 找不到EventBus/ButterKnife等第三方包解决方案
  • 原文地址:https://www.cnblogs.com/zhaogaojian/p/5981431.html
Copyright © 2011-2022 走看看