社区
C#
帖子详情
WCF客户端如何实例化一次并全局使用?
JokerChenjb
2016-08-26 04:33:51
WCF服务端是基于自定义声明授权的,WCF是基于WinForm做的,在WCf客户端中进行用户名/密码的认证。
我的想法是,在WCF客户端内,将服务只实例化一次得到一个全局对象,然后在登陆界面上,只验证一次用户名/密码,验证通过后,就可以根据权限,通过该全局对象调用权限允许的服务。而不是每次都得new,每次都得验证用户名/密码。
不知道这样是否可以实现?如果可以,请问如何实现?
...全文
233
3
打赏
收藏
WCF客户端如何实例化一次并全局使用?
WCF服务端是基于自定义声明授权的,WCF是基于WinForm做的,在WCf客户端中进行用户名/密码的认证。 我的想法是,在WCF客户端内,将服务只实例化一次得到一个全局对象,然后在登陆界面上,只验证一次用户名/密码,验证通过后,就可以根据权限,通过该全局对象调用权限允许的服务。而不是每次都得new,每次都得验证用户名/密码。 不知道这样是否可以实现?如果可以,请问如何实现?
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
郑州高新区WPF小王子
2016-08-29
打赏
举报
回复
单例模式??
software_artisan
2016-08-27
打赏
举报
回复
这个似乎不可能。。。因为即使是net.tcp,也会有个连接超时时间。超时了,连接就断了,你要传输数据,就要重新new一个client。当然了,你可以把超时时间设置得很长。。。这样也许可以让你不用总是new一个client,但总归是会超时的。 so,不要总想歪门邪道,搞这些容易坑到自己。
以专业开发人员为伍
2016-08-26
打赏
举报
回复
贴出你的所谓“进行用户名/密码的认证”代码。 web是无连接的,因此底层就不存在什么长连接概念。如果你在web服务上纠结于长连接,那么为什么不使用tcp甚至websocket呢? 访问无连接的服务,那么第一次“验证”时,客户端会得到一个授权码(叫做passportId 或者 accessToken 之类的都可以),然后每一次访问都要同时提供这个编码。服务器端可以使用、也可以不使用它,反正是在参数设计中就有这个编码作为参数之一。
[老老实实学
WCF
] 第八篇
实例化
老老实实学
WCF
第八篇
实例化
通过上一篇的学习,我们简单地了解了会话,我们知道服务端和
客户端
之间可以建立会话连接,也可以建立非会话连接,通信的绑定和服务协定的ServiceContract 的SessionMode属性共同决定了连接是否是会话的。会话连接在会话保持阶段服务端可以记住
客户端
,而非会话连接则不会,相同
客户端
的多次调用会被认为是不同的
客户端
发起的。 会话这个特性是许
WCF
实现双工通讯及
客户端
调用
新建一个Windows窗体应用程序(即
客户端
Client)和一个
WCF
服务库(
WCF
双工)在
WCF
双工项目下:新建一歌ILogger接口和实现该接口的Logger类在ILogger接口中using System;using System.Collections.Generic;using System.Linq;using System.Runtime.Serialization;using Sy...
C#
WCF
分布式应用实践:服务建立与
客户端
调用
服务合约是服务端与
客户端
之间通信的基础。通过合约,
客户端
知道可以调用哪些方法以及这些方法的输入和输出参数。服务合约通常包含如下信息:服务操作:定义
客户端
可以调用的方法。数据契约:定义传递给和从服务返回的数据类型。消息交换模式:定义
客户端
和服务端之间消息如何交换,典型的有请求/响应模式和单向消息模式。set;set;set;在上面的例子中,和类
使用
标记,表示它们可以作为消息的一部分发送。标记的属性则表示数据成员。
WCF
服务对象
实例化
的三种方式
很多情况下,我们都需要控制
wcf
服务端对象的初始化方式,用来控制
wcf
实例在服务端的存活时间。
Wcf
框架提供了三种创建
wcf
实例的方式。
WCF
服务对象
实例化
基础 在普通的
WCF
请求和相应过程中,将产生下列活动:
WCF
客户端
向
WCF
服务端对象发起一个请求。
WCF
服务端对象
实例化
WCF
服务实例响应请求并给
客户端
发送响应 针对上述场景,
WCF
提供了三种便捷方式 每次调用 —...
WCF
测试
客户端
(
WCF
Test Client)
WCF
开发工具 大家都听说
WCF
是很酷的.net技术,可是如何迈出激动人心的
WCF
服务开发的第一步呢?大家也都知道,开发一个服务,并不只是完成服务本身的功能,还要写主机程序来运行服务,写
客户端
程序来测试服务,如果能够只专注于开发服务本身,是不是更棒? 我们团队在Visual Studio 2008中开发了一系列的工具,帮助用户提升
WCF
服务的开发体验,同时也使得初学者的入门更为容易。想象一下
C#
111,128
社区成员
642,533
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章