All articles| All Pictures| All Softwares| All Video| Go home page| Write articles| Upload pictures

Reading number is top 10 articles
使用AJAX技术实现网页无闪自动局部刷新_.net资料_编程技术
《Effective,C#》之用委托实现回调_.net资料_编程技术
SQL Server机器上病毒扫描的注意事项_[SQL Server教程]
浏览UTF-8编码的网页出现空白解决方法_php资料_编程技术
SQL中CASE使用_mssql学习_编程技术
为不同的浏览器载入不同CSS的二种方法_[Html教程]
Asp.Net,Ajax,学习笔记3,UpdatePanel的使用(上)_[Asp.Net教程]
实例:用PHP技术解决网站URL格式过长的问题_php资料_编程技术
asp.net,2.0下用access开发的时候要注意的问题_[Asp.Net教程]
SQL,server,2005中的DATENAME函数_[SQL,Server教程]
Reading number is top 10 pictures
清醇靓丽的美眉
So beauty, will let you spray blood10
Is said to be a Chinese female artist fame explicit pictures before2
The girl of like self-time
9.3阅兵全景图7-指挥系统和后勤保障系统梯队
Born After 90 Beijing sports university campus flower photos5
Sora aoi mirror memorial classics1
Exquisite decoration is not paying too much1
From China fortress sora aoi5
毕姥爷事件,告诉你6条真理
Download software ranking
少妇苏霞全本
Jinling thirteen stock
C#高级编程(第4版)
Sora aoi 120 minutes
星际争霸1.08硬盘免安装版
linux高级编程
The hero
Unix video tutorial9
卡丁车单机版
Call Of Duty2
归海一刀 published in(发表于) 2014/3/16 2:55:46 Edit(编辑)
轻量级的Ajax解决方案——DynAjax-直接在客户端调用C#类的方法_[AJAX教程]

轻量级的Ajax解决方案——DynAjax-直接在客户端调用C#类的方法_[AJAX教程]

轻量级的Ajax解决方案——DynAjax:直接在客户端调用C#类的方法_[AJAX教程]

前言:
MS Ajax我在以前一个项目中使用过,感觉太笨重了,速度比较慢,而且出了问题,很难控制。所以我一直想用一个可控制的替代框架。
客户端JS框架肯定首推JQuery,优雅简洁的代码,完美的支持表现和逻辑分离,让人一见倾心。
服务器端框架我找了一些,国内的大部分还都是零散的代码或处于萌芽状态,大多数实现JSON的C#类就没下文了,对安全性都没有整合的建议。
直到今天,我发现了DynAjax,开源的,完全可控的Ajax服务器端框架。原项目作者是法国人(Mr Benoît BEGUIN),现翻译作者的介绍如下。


概述

DynAjax是一个Javascript / Ajax / ASP.Net / C# 结合的Ajax框架,它能帮助我们很容易地直接通过Javascript动态调用服务器端的C#方法(就像Java世界的DWR)。对象序列化基于JSON,支持混合对象转换。

下载最新正式版 (v1.04)

DynAjax v1.04


DynAjax是什么 ?

DynAjax 是以C# .Net / ASP .Net为服务器端、以Prototype为客户端的Ajax框架(译者按:发现DynAjax只有Prototype版本的,稍后一些日子我会发布改写的JQuery版的DynAjax),它支持从客户端通过Javascript直接访问服务器端C#方法.


DynAjax 为谁准备的 ?

以下 C# / ASP .Net 开发者:如果想要添加直接有效、方便的Ajax到你的网站 或者 专业级的项目开发 (我用它来开发自己公司的专业级项目).


DynAjax到底能做些什么,怎么做的?

假设你正在开发一个专业网站程序,你需要保存一些文本数据型的用户信息到数据库中,同时又不发送Html表单,也不刷新页面。显然,你需要使用Ajax。
你打算使用原始的XmlHttpRequest (Ajax) 请求数据和检测返回的数据等等,发送数据并确认正确被保存?这种原始的方法让人感到繁琐。

通过使用DynAjax,你可以很容易地保存这些文本数据,而代价只是写写简单的JavaScript (假设有一个类"MyClass",里面有个公共方法叫“saveText”,方法返回string类型的“ok”,你可以这样调用) :
 
var response = MyClass.saveText(myText);

if (response == "ok") {

--- code here ---

}

很简单的使用方法哦,不是吗?
浏览 示例页 查看更多的例子和源码.


DynAjax是同步还是异步的?

取决你的使用:如果你想同步调用,使用这种语法形式:

var response = MyClass.myMethod(myArgs);

if (response >= 2) {

--- code here ---

}

如果你想异步调用,可以使用下面这种语法形式:

MyClass.myMethod(myArgs, function(response) {

if (response >= 2) {

--- code here ---

}

});

DynAjax 推荐采用这种异步方式。

DynAjax支持哪些数据类型可以被客户端Javascript接收?

几乎所有数据类型都能从服务器端返回到客户端。事实上,数据被转换为JSON格式 (JSON是Javascript与其他语言比如C#.Net,Java等交换数据的特殊格式,有点类似xml的功能。)
这种格式支持以下数据类型:


  • Strings 字符串
  • Numbers (int, decimal...) 数字
  • Booleans 布尔
  • Arrays 数组
  • HashTables 哈希表
  • Complex objects复合对象 (由成员变量, Arrays, HashTables, Arrays 或者其他复合对象 等等 构成)
  • "null" value

如你所见, 几乎所有(数据类型)都是可能的:你可以做到的。打个比方 , 如果你想开发一个eBay类型的网站,在搜索页面,访问一个返回商品【实例】列表(List)的方法,并显示列表 - 你只需要通过Javascript重复循环访问返回的JSON格式性质列表 (List),进而访问每个商品【实例】,然后访问【实例】属性。这就如你在C#里面做的一样,酷!

如果你想对JSON这个格式有更多了解,请访问 Json description site(英文)。

安全性怎样?

DynAjax 针对所有可远程访问的Method(方法),皆提供了安全验证机制.
事实上,每个方法必须被定义到XML格式的配置文件中,你可以设定这个方法是-需要-还是-不需要-访问验证。.
所以,即便黑客也不能在未验证通过的情况下访问 需要 验证的方法。


安装/设置DynAjax到我的Web应用程序中会麻烦吗?

不麻烦, DynAjax基于8 个文件 :


  • DynAjaxHandler.aspx 和DynAjaxHandler.cs - Ajax处理器,接受和分派所有的DynAjax调用
  • dynAjaxScript.aspx 和dynAjaxScript.cs - 动态生成客户端JavaScript,属于DynAjax的重要部分 (尽管这个文件扩展名是aspx,但它作为js调用)
  • prototype.js - prototype框架
  • Newtonsoft.Json.dll - 一个.net的Json程序集
  • log4net.dll - 日志库
  • dynAjaxConfig.xml - DynAjax 的配置文档(XML格式的)

这8 个文件必须直接拷贝到Web应用程序目录中, 只有dynAjaxConfig.xml可以根据需要进行配置修改,其他文件非专业不要修改.
相当容易,对吧 ?
您可以看看第一本DynAjax教程 DynAjax 教程 01(英文),一步一步地进行DynAjax的安装/配置。


我怎样在xml配置文件中定义方法、类等等?

你可以访问维基百科书: configuration 有详细解释.(译者:作者忘了做链接,但配置确实不难,依样葫芦画瓢即可)


哪些人会对这个框架提供开发支持?

我 (Mr Benoît BEGUIN) 和我的公司 Odesys.请随意联系我们 admin@dynajax.org , 报告Bugs和新的功能特性建议。

--------------------本文为翻译性原创,转载请注明出处,作者:Kai.Ma 博客:http://kaima.cnblogs.com-----------






添加到del.icio.us 添加到新浪ViVi 添加到百度搜藏 添加到POCO网摘 添加到天天网摘365Key 添加到和讯网摘 添加到天极网摘 添加到黑米书签 添加到QQ书签 添加到雅虎收藏 添加到奇客发现 diigo it 添加到饭否 添加到飞豆订阅 添加到抓虾收藏 添加到鲜果订阅 digg it 貼到funP 添加到有道阅读 Live Favorites 添加到Newsvine 打印本页 用Email发送本页 在Facebook上分享


Disclaimer Privacy Policy About us Site Map

If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.