相信不少人会心动的),不仅组件丰富,效果漂亮,而且ExtJs集成的Ajax功能可以方便的与.Net的WCF进行交互....这里我们将演示ExtJs的FormPanel从WCF加载数据,以及如何提交数据到WCF服务端 1.首先来定义一个用于传输信息的Class(实际开发中,可以是Linq to Sql的Class或任何可序列化的实体类...DataMember]表明该类可以序列化 2.再定义几个用于跟ExtJs交互的方法(初次接触Ajax与WCF交互的同志,建议参考一下老张的"Ajax与WCF交互-WCF之美(http://www.cnblogs.com...ExtJs的Ajax对象完成与WCF的交互(初次接触ExtJs Ajax的,可参见ExtJs学习笔记(5)_Ajax示例https://cloud.tencent.com/developer/article...最近学习了ExtJs和WCF后,个人强力推荐.net3.x时代web开发的绝佳组合: ExtJs(前端) + WCF(web服务层) + Linq To Sql(DAL,以后可能会换成Ado.Net Entity
上文做了下Ajax与WCF进行json交互的简单介绍,本文阐述一个具体的实际应用:ExtJs与WCF交互,生成树.也很简单.先看看最终的效果吧: 第一步: 创建一个.net framework 3.5...的网站项目ExtJsTreeWcf 第二步: 在网站项目中创建一个启用了Ajax的WCF服务WcfTreeService.svc,创建好之后,对该服务做如下的更改: 1)在WcfTreeService.svc...的脚本资源拷贝到项目中的js目录,然后在default.aspx中添加对extjs脚本的引用: <link rel="stylesheet" type="text/css" href="js/ext2.1...: <em>ExtJs</em><em>与</em><em>WCF</em><em>交互</em>-树 在中添加如下脚本: <script type=...<em>利用</em>httpwacth察看WcfTreeService.svc/GetTree<em>的</em>输出如下: [{"children":[{"children":[],"cls":"folder","id":"noe1
本文将讲解如何用XTemplate结合WCF与服务端交互,生成数据列表,同时加上无刷新分页功能(默认情况下ExtJs并没有为XTemplate并没有提供分页功能) 1.先做一些准备工作,写一个通用的类...(改编自老张的PageData),用于WCF向ExtJs返回分页数据 Code using System; using System.Collections.Generic; using System.Runtime.Serialization...,但是wcf的服务在返回时,必须要有一种格式,要么xml,要么json,所以我们指定了wcf以json格式返回后,会对正常的结果再做一次序列化,最后的结果是使字符串前后都加上了双引号,同时把原来正常的双引号做了转义处理...相信也有不少人跟我有一样的疑问,后来我想了想,至少有二个好处: a.updatepannel默认会引起大量的数据回发,虽然页面没刷新,但是客户端跟服务端之间的传输数据量很大,而用ExtJs+Wcf...,除了wcf返回的字符串,就没其它东西了,性能上会提高 b.相对而言,ExtJs的Ajax请求方式,我觉得比aspx.net ajax的更容易操作.
个人认为,XTemplate是ExtJs中最灵活的用来显示数据的组件,有点类似aspx中的Repeater控件,显示数据的模板完全可以由用户以html方式来定制....做交互 1.首先定义一个用于信息传输的实体类(实际开发中,可以是任何可序列化的class,包括linq to sql生成的类) Code using System.Collections.Generic...的WCF服务" a.同时将svc手动修改一下,注意下面的高亮部分要手动加上去: <%@ ServiceHost Language="C#" Debug="true" Service="<em>Ajax</em>_<em>WCF</em>.MyService...<em>ExtJs</em><em>的</em><em>Ajax</em>对象,请求MyServices.svc/GetPerson方法,获取Json字符串,其它地方完全一样,需要注意<em>的</em>是: a.返回<em>的</em>字符串,需要用Ext.Util.JSON.decode...运行效果如下: 转载请注明来自"菩提树下的杨过" 这回运行时,增加了"数据加载中"的效果,加载成功后与刚才的静态示例显示结果完全相同
服务端 (1)新建一个"启用了Ajax的WCF服务",命名为MyService.svc (2)写一个方法用于取得网格所需的数据 [ServiceContract(Namespace = "")]..."> 说明一下:(3),(4)二步是必须的,目的是为了生成Restful WCF,可以在ExtJs里用类似"MyService.svc..." Inherits="Ajax_WCF._02_Grid" %> <!...2.WCF的服务端方法,必须设置成JSON格式,另外Method设置为GET,否则运行时,前端页面读不出数据 3.如果设置了autoExpandColumn,则autoExpandColumn对应的列...,必须是id对应的列,否则出错 4.服务端的类中,如果有DateTime字符的字段,需要手动修改dbml对应的cs文件,把DateTime改成string,否则序列化时,会产生很怪的值,估计是.Net
ajax应用中跨域一直是一个非常麻烦的问题,目前也有一些解决办法,但要么比较麻烦,要么就不具备通用性,幸好ExtJs里的ScriptTagProxy提供了跨域读取数据的功能,而且在几大浏览器上都可以正常运行...其中stcCallback1001中的1001是自动生成的,如果是分页提交的话,每再请求一次1001会变成1002,1003...类推 2.ExtJs官方的示例中虽然ScriptTagProxy的例子并不少...,但是就是没有XTemplate+ScriptTagProxy跨域读取的单一功能示例,下面给一个XTemplate跨域读取数据的示例 a.服务端WCF的处理 Code [OperationContract...http://www.cnblogs.com/yjmyzz/archive/2008/09/10/1288399.html (ExtJs学习笔记(22)-XTemplate + WCF 打造无刷新数据分页...)相比,多了一个参数callBack,同时返回类型改为Stream,返回方法的处理参考了老张的(再说ExtJs与WCF之间的跨域访问)一文 b.ExtJs的前端处理 Code <!
上篇文章《用ExtJs+Linq+Wcf打造简单grid 》,这个网格控件不带分页,本文在上文的基础上添加分页功能,文中会着重介绍如何在用LINQ返回分页数据,如何使ExtJs与WCF进行Restful...交互,如何在页面中添加一个带有分页功能的ExtJS的Grid控件。...设计一个用于与ExtJs进行分页交互的PageData泛型类: using System; using System.Data; using System.Configuration; using...与ExtJS的Grid控件交互,T是返回的具体数据类型的集合,TotalRecord是总记录数。...在后台代码中设计一个WCF服务操作,用于与ExtJS交互: public PageData GetProductsByPage(int start,int limit) 具体代码为
ExtJs对于Ajax的使用非常简单,看下面的代码: 1.Html页: <!...; }) 获取服务端信息... 2.服务端GetData.ashx using System.Web; using System.Web.Services; namespace... Ajax_WCF { /// /// $codebehindclassname$ 的摘要说明 /// [WebService(Namespace... { get { return false; } } } } 运行效果: 转载请注明来自"菩提树下的杨过
2.ExtJs调用页面 ExtJs_Grid_Xml <script type="text/javascript...结合<em>WCF</em>动态读取 1.<em>WCF</em>端关键代码 定义一个可序列化<em>的</em>类(当然也可以是Linq to Sql中自动生成<em>的</em>类,不过要手动加DataContract和DataMember标记,以满足<em>WCF</em><em>的</em>数据契约要求...完全教程", Author = "Mike", Publisher = "上海出版社" }); return _List.ToArray(); } 2.前端ExtJs代码 Alien</Author
综合对比分析多种JS框架,采用了Ajax开发框架——ExtJS作为前端开发框架,同时服务端选用简洁轻巧的网页开发语言PHP,再结合轻量级的后台数据库,最终实现了一个高效易用的V**管理系统,实现了方便快捷地对主站加密装置进行管理及维护的目的...1 ExtJS概述 1.1 ExtJS简介 ExtJS是一个与后台技术无关的前端Ajax框架,主要用于创建UI(User Interface用户界面),也被用来开发RIA(富客户端)的Web应用。...用户在登录界面输入正确的用户名和登录口令,验证通过后,系统再根据其所赋予的权限进行判断,给出相应的可操作界面。系统的登录设计基于ExtJS界面框架、采用Ajax技术进行数据交互。...本管理系统中,富客户端框架ExtJS与PHP语言完成了很好的配合,数据交互及用户体验良好。但是,由于ExtJS框架源码占用空间较大,依旧会耗费一定的解析加载时间。...因此,后期会考虑对ExtJS实现功能定制,且进一步优化PHP与ExtJS的数据交互机制。
一:源起 1.何为CB/S的应用程序 C/S结构的应用程序,是客户端/服务端形式的应用程序,这种应用程序要在客户电脑上安装一个程序,客户使用这个程序与服务端通信,完成一定的操作。 ...B/S结构的应用程序,是浏览器/服务端形式的应用程序,这种应用程序不用在客户端部署任何东西,客户只需要通过浏览器与服务端通信,来完成一定的操作。 ...客户端可以直接与服务端通信,也可以通过浏览器核心与服务端通信。 ...6.与页面脚本交互 我们既然选择自己开发浏览器,那么浏览器一定能自如的让页面执行一些特殊脚本,页面也可以通过脚本让浏览器完成一些脚本无法完成的操作。...确实,AJAX请求也会面临这种问题,而且更为突出。因为在ExtJs中对AJAX请求做了很多封装:proxy、store、request、load等,随处可见ajax的身影。
这一节,我们将看到ExtJs功能强大的可编辑网格控件,几乎与VS.Net的GridView功能一样了,但是ExtJs的可是纯JS的UI 一.静态示例(改自ExtJs的官方示例) a.因为我们是采用xml...动态读取 1.WCF服务端 [OperationContract] [WebInvoke(ResponseFormat = WebMessageFormat.Xml, Method =...WCF数据契约,还是要手动对类添加[DataContract]标志,对字段添加[DataMember]标志,否则无法序列化;另外对于System.DateTime类型的字段,最终序列化成xml时,格式类似...2007-03-07T15:48:04,ExtJs不能正确识别这种格式,无奈之下,只好手动修改*.designer.cs文件中自动生成的T_Class类,把...="true" CodeBehind="03_Grid_Editable.aspx.cs" Inherits="Ajax_WCF._3_Grid_Editable" %> <!
"; // public static final String BASE_URL = "www.baidu.com"; /** * * @param url 发送请求的Url...* @return 服务器响应的字符串 * @throws Exception * @throws InterruptedException */...服务端: 写一个servlet接收,判断客户端发送的是什么请求uri public void service(HttpServletRequest request, HttpServletResponse...:" + jsonArray.toString()); response.getWriter().println(jsonArray.toString()); } 我这里数据交互使用的是...客户端获取服务端传递过来的json数据再解析成pojo对象即可。
这几天在学习ExtJs + Wcf的过程中,发现一个问题,如果Class中有成员的类型为DateTime,即使我们正常标识了[DataMember],序列化成JSON时,会生成一种特有的格式: .....这种格式ExtJs并不识别,导致最终的组件,比如Grid上无法正常显示,解决办法有二个: 1.将Class的成员,手动改成String类型,不过个人不推荐这种方式,毕竟将数据类型都改了,相应的服务端很多地方都可能会做相关修改...2.用JS在前台调用时,用代码处理返回的JSON字符串格式,使之符合ExtJs的规范(这个方法是从博客园"小庄"那里学来的,呵) Ext.onReady(function() { //这个函数演示了怎样把服务器端的...DateTime类型转为Javascript的日期 function setAddTime(value, p, record) { var jsondate...设置Grid的Columns时,类似如下处理: var grid = new Ext.grid.GridPanel({ store: store,
诞生背景: 1、Ajax直接请求普通文件存在跨域无权访问的问题,甭管是静态页面、动态网页、web服务、wcf、只要是跨域请求,一律不行。...具体实现: 不管jQuery也好,extjs也罢,又或者是其他支持jsonp的框架,他们幕后所做的工作都是一样的,下面我来循序渐进的说明一下jsonp在客户端的实现: 1、我们知道,哪怕跨域js文件中的代码...3、聪明的开发者很容易想到,只要服务端提供的js脚本是动态生成的就行了呗,这样调用者可以传一个参数过去告诉服务端“我想要一段调用XXX函数的js代码,请你返回给我”,于是服务器就可以按照客户端的需求来生成...剩下的就是如何把代码封装一下,以便于与用户界面交互,从而实现多次和重复调用。 什么?你用的是jQuery,想知道jQuery如何实现jsonp调用?...的页面生成了一段这样的代码提供给jsonp.html(服务端的实现这里就不演示了,与你选用的语言无关,说到底就是拼接字符串): <!
1、一个众所周知的问题,Ajax直接请求普通文件存在跨域无权限访问的问题,甭管你是静态页面、动态网页、web服务、WCF,只要是跨域请求,一律不准; 2、不过我们又发现,Web页面上调用js文件时则不受是否跨域的影响...OK,服务器很聪明,这个叫做flightResult.aspx的页面生成了一段这样的代码提供给jsonp.html(服务端的实现这里就不演示了,与你选用的语言无关,说到底就是拼接字符串): flightHandler...剩下的就是如何把代码封装一下,以便于与用户界面交互,从而实现多次和重复调用。 什么?你用的是jQuery,想知道jQuery如何实现jsonp调用?...这里针对ajax与jsonp的异同再做一些补充说明: 1、ajax和jsonp这两种技术在调用方式上“看起来”很像,目的也一样,都是请求一个url,然后把服务器返回的数据进行处理,因此jquery和ext...3、所以说,其实ajax与jsonp的区别不在于是否跨域,ajax通过服务端代理一样可以实现跨域,jsonp本身也不排斥同域的数据的获取。
一直觉得SL中的wcf双工通讯方式有点鸡肋,如果是以http方式实现则效率太低,如果用SL4中的tcp方式实现,又跟socket太雷同,所以一直没去研究,不过这东西在对性能要求不高时(比如在网页上每5分钟更新一次天气预报.../股票信息),实现起来还是蛮方便的. wcf双工通讯与传统的wcf相比,最大的区别就是:传统的wcf通常都是客户端去调服务,即客户端从服务端上“拉”信息,而双工通讯除了允许客户端从服务端"拉"信息外,服务端还能主动向客户端...当然这种实现是有性能消耗的,服务端将保存一条"回调通道"以便能利用该通道把信息推到客户端,而客户端也要有相应的回调函数来处理--有点类似"ajax中的长链接"以及"服务器推"技术 sl3的官方文档http...://msdn.microsoft.com/zh-cn/library/dd470106(VS.95).aspx中有一个客户端把订单发送到服务端,然后由服务端处理后,再把结果回推到客户端的例子,不过sdk...1.服务端的web.config中配置bindingExtensions时,如果按照官方的配置写法: <add
这一章接着上一篇 对于Ext.data.Store 介紹 与总结,以及对以前代码的重构与优化 1.对于更新OnUpdate()函数的修改:先上代码: function OnUpdate(record)...记录传了过来,直接使用record的set方法对数据进行更新,然后用store的commitChanges()方法进行提交。...然后它对应的就是rest的Put方式。 2.rest方式前面讲到都是向后台传值,那么他从后台传出来的值应该怎么办呢。其实细心的读者可能会发现,上面程序是存在问题的,啥问题?...return new ReturnMsg() { success = false, msg = "test" }; } } 由于对Extjs...等下周就要进入wpf的开发了,唉,刚开始熟悉,又要离开,真不舍得。 再发一点牢骚,程序员的路究竟该怎么走?我其实很迷茫,样样通,公司需要。但是对自己的长期发展不利,样样通的后果就是样样不精。
前言 由于Sencha Touch 2这种开发模式的特性,基本决定了它原生的数据交互行为几乎只能通过AJAX来实现。 ...当然了,通过调用强大的PhoneGap插件然后打包,你可以实现100%的Socket通讯和本地数据库功能,又或者通过HTML5的WebSocket也可以实现与服务器的通讯和服务端推功能,但这两种方式都有其局限性...1、一个众所周知的问题,Ajax直接请求普通文件存在跨域无权限访问的问题,甭管你是静态页面、动态网页、web服务、WCF,只要是跨域请求,一律不准; 2、不过我们又发现,Web页面上调用js文件时则不受是否跨域的影响...剩下的就是如何把代码封装一下,以便于与用户界面交互,从而实现多次和重复调用。 什么?你用的是jQuery,想知道jQuery如何实现jsonp调用?...3、所以说,其实ajax与jsonp的区别不在于是否跨域,ajax通过服务端代理一样可以实现跨域,jsonp本身也不排斥同域的数据的获取。
WCF WCF 包含一组面向客户端的类库,它使得基于 .NET Core 构建的应用能够调用 WCF 服务。...这些类库与 Windows Store 的可用功能相匹配,但不仅限于此,通过 .NET Core 使得现在的 WCF 应用程序的覆盖范围更广。...完全可以让 WCF 服务触及移动设备环境以及多层次的服务端。...项目详情 官方网站 项目源码 项目许可证: MIT 项目联系人: Ron Cain 相关链接 参与贡献 参与讨论 笔者简评 此项目并非 WCF 服务端。...此项目是基于 .Net Core 的 WCF 客户端构建方案。
领取专属 10元无门槛券
手把手带您无忧上云