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()); }
通过客户端可以发现可以实现数据共享。
本博客是个人工作中记录,更深层次的问题可以提供有偿技术支持。
另外建了几个QQ技术群:
2、全栈技术群:616945527
2、硬件嵌入式开发: 75764412
3、Go语言交流群:9924600
闲置域名WWW.EXAI.CN (超级人工智能)出售。
另外建了几个QQ技术群:
2、全栈技术群:616945527
2、硬件嵌入式开发: 75764412
3、Go语言交流群:9924600
闲置域名WWW.EXAI.CN (超级人工智能)出售。