WCF技术

qq_34030639 2018-10-11 11:57:04
有玩WCF的嘛?一起探讨啊,看帖子都没有多少,有用wcf的留言互相学习
...全文
350 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
public void ProcessRequest(HttpContext context)
{
    var request = context.Request;
    using (var reader = new StreamReader(context.Request.InputStream))
    {
        var text = reader.ReadToEnd();   
        var obj = JObject.Parse(text);      
        var commandName = (string)obj["ServiceName"];
        var exe = GetMyCommand(commandName);     //工厂方法,根据命令类型,找到命令处理对象实例
        exe.SetInputParameter(obj);
        object output = exe.ExecuteCommand();
        context.Response.ContentType = "text/json";
        var json = JsonConvert.SerializeObject(output);
        context.Response.Write(json);
    }
}
WCF 在20年前设计出来时,是为了垄断市场。那时候有服务的注册机制、发现机制,美国的几大公司打算垄断管理市场。这就跟我们99.99999%开发者自己的需求不一致。过了这么多年,WCF 主要功能并没有成立,所以也就无需再用它。
  • 打赏
  • 举报
回复
开发一个 web 无连接数据服务,如果你使用 asp.net 的话,那么其实使用”一般处理程序“也就够了。例如
public void ProcessRequest(HttpContext context)
{
    var request = context.Request;
    using (var reader = new StreamReader(context.Request.InputStream))
    {
        var text = reader.ReadToEnd();   
        var obj = JObject.Parse(text);      
        var commandName = (string)obj["ServiceName"];
        var exe = GetMyCommand(commandN[code=csharp]
am); //工厂方法,根据命令类型,找到命令处理对象实例 exe.SetInputParameter(obj); object output = exe.ExecuteCommand(); context.Response.ContentType = "text/json"; var json = JsonConvert.SerializeObject(output); context.Response.Write(json); } }[/code] 只要提交一个 javascript 对象作为输入参数,返回一个 javascript 对象作为输出,无需封装、解析什么 WCF 参数格式之类的开销。 客户端可以支持网页 js、c# 等等各种原生代码。例如c#可以很容易用一句
new WebClient().UploadData(url,  Encoding.UTF8.GetBytes(对象序列化))
来访问它,用不着什么客户端代理技术,客户端的输入输出对象也是强类型的。
  • 打赏
  • 举报
回复
引用 4 楼 zmidl 的回复:
WPF 是个利器,有cs端需求就有winform 和 wpf 只是wpf这个大块头吓走了一批学习者。
是利器。 我们现在只招 js 前端开发工程师,开发平板、手机、pc 软件。有需要会写一点本地服务和本地驱动,但是不开发 windows 桌面程序。
xuan.ye 2018-10-19
  • 打赏
  • 举报
回复
强答一个,wcf大概用过2年多,其中rpc 和 Duplex 都是用过,详细说说: 优点:容易上手,快速开发 缺点: 1、无分布式; 2、客户端请求server时存在压力大不回复情况(暂时无解) 如果系统很小,几个人使用,完全可以满足需求。如果是大的系统,估计应该不会来这里问是吧?
zmidl 2018-10-15
  • 打赏
  • 举报
回复
引用 3 楼 sp1234 的回复:
与 .net core 有些契合,我们有很多东西现在已经根本弃用:WPF、WCF、ASMX、APPDomain、WF。

还有些东西我们也是根本弃用的,其中就包括 asp.net mvc 的服务器端模板语言。


WPF 是个利器,有cs端需求就有winform 和 wpf 只是wpf这个大块头吓走了一批学习者。
  • 打赏
  • 举报
回复
与 .net core 有些契合,我们有很多东西现在已经根本弃用:WPF、WCF、ASMX、APPDomain、WF。 还有些东西我们也是根本弃用的,其中就包括 asp.net mvc 的服务器端模板语言。
五更琉璃 2018-10-12
  • 打赏
  • 举报
回复
VS 2 年一更新,有时1年就更新。
江湖评谈 2018-10-12
  • 打赏
  • 举报
回复
wcf 最后更新的一个版本是五年前的 2013年,此后跟 mfc 一样,放在哪儿僵尸框架。 微软经常搞出一个东西出来,然后放弃自己搞出来的东西,

7,765

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧