国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - ASP.NET教程 - Javascript 直接調用服務器C#代碼 ASP.NET Ajax實例

Javascript 直接調用服務器C#代碼 ASP.NET Ajax實例

2019-07-16 21:35ASP.NET之家 ASP.NET教程

近來總有一些朋友會問到一些入門的問題,把這些問題整理一下,寫出來。在以前的文章里,曾經利用純JS編寫過Ajax引擎,在真正開發的時候,大家都不喜歡以這種低效率的方式開發,利用MS Ajax的集成的引擎,可以簡單不少工作。

在MS Ajax中,JS與C#交互的一種方式就是調用WebService,該WebService可以ASMX的也可以是WCF的,不論哪種方式,系統都會自動為開發者生成代理的JS類。實現方法如下:

1. 建立一個網站,并在其中添加一個WCF服務(這里一定要選擇Ajax-Enabled WCF Service),如下圖所示:

Javascript 直接調用服務器C#代碼 ASP.NET Ajax實例

2. IDE會自動為我們生成一個SVC文件,是對外的接口,以及該SVC對應的后臺實現類,該類文件會被放在App_Code下,如下圖所示:

Javascript 直接調用服務器C#代碼 ASP.NET Ajax實例

3.修改該類的代碼,如下所示:

代碼如下: 
[ServiceContract(Namespace = "TestAjax")] 
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)] 
public class Service 

[OperationContract] 
public bool ValidateUser(string uid, string pwd) 

if (uid=="sa"&&pwd=="sa") 

return true; 

return false; 

}

4.現在我們就可以頁面里調用了,首先在頁面中添加一個ScriptManager,并引入我們剛才編寫的那個WCF WebService(目的是在運行的時候生成JS的代理類),如下所示: 
代碼如下: 
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
<title></title> 
</head> 
<body> 
<form id="form1" runat="server"> 
<div> 
<asp:ScriptManager ID="ScriptManager1" runat="server"> 
<Services> 
<asp:ServiceReference Path="~/Service.svc"/> 
</Services> 
</asp:ScriptManager> 
</div> 
</form> 
</body> 
</html>

5.接下來可以編寫JS代碼來直接調用C#寫的WebService了。JS代碼如下所示: 
代碼如下: 
<script type="text/javascript"> 
function ValidateUser(uid, pwd) { 
TestAjax.Service.ValidateUser(uid,pwd,OnSucceed ,OnFailed ); 

function OnSucceed(result) { 
if (result == true) { 
window.alert("通過驗證"); 

else { 
window.alert("驗證失敗!"); 


function OnFailed(result) { 
window.alert("操作失敗:"+result ._message); 

</script>

6.這里請大家注意,在調用TestAjax.Service.ValidateUser方法時,代碼中并沒有直接取該函數的返回值,因為利用這種方案對服務器函數的調用都是異步的,正確的處理方法是指定了兩個回調函數OnSucceed和OnFailed,第一個函數是成功時的回調,后一個是失敗時的回調,這兩個函數都需要一個參數,OnSucceed的參數就是服務器函數的返回值,而OnFailed的參數是失敗時的出錯信息,功能有點像Exception類型,其中_message屬性中出錯信息,_stackTrace中出錯的堆棧跟蹤信息。 
7.千萬別說這種回調方法麻煩!其實這是一種常規的異步回調模式,大多數情況(不論什么語言)都會這么寫的! 
8.頁面上完整的代碼如下所示: 
代碼如下: 
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
<title></title> 
<script type="text/javascript"> 
function ValidateUser(uid, pwd) { 
TestAjax.Service.ValidateUser(uid,pwd,OnSucceed ,OnFailed ); 

function OnSucceed(result) { 
if (result == true) { 
window.alert("通過驗證"); 

else { 
window.alert("驗證失敗!"); 


function OnFailed(result) { 
window.alert("操作失敗:"+result ._message); 

function Button1_onclick() { 
var uid = $get("tbxUid").value; 
var pwd = $get("tbxPwd").value; 
ValidateUser(uid,pwd); 

</script> 
</head> 
<body> 
<form id="form1" runat="server"> 
<div> 
<asp:ScriptManager ID="ScriptManager1" runat="server"> 
<Services> 
<asp:ServiceReference Path="~/Service.svc"/> 
</Services> 
</asp:ScriptManager> 
</div> 
用戶名:<input id="tbxUid" type="text" /><br /> 
密碼: <input id="tbxPwd" type="text" /> 
<input id="Button1" type="button" value="驗證" onclick="return Button1_onclick()" /> 
</form> 
</body> 
</html>

 

9.運行結果如下所示: 
當用戶名和密碼都是sa時會通過驗證 
當用戶名和官友有一個值不是sa時就不能通過驗證

Javascript 直接調用服務器C#代碼 ASP.NET Ajax實例

Javascript 直接調用服務器C#代碼 ASP.NET Ajax實例

10. 大家有什么問題給我發Email吧:warensoft@foxmail.com

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产精品爱久久久久久久 | 无码一区二区三区视频 | 欧美综合一区二区三区 | 国产精品99久久久久久动医院 | av网站在线免费观看 | 在线免费观看a视频 | 国产精品美女久久久 | 日韩欧美一区二区在线视频 | 人人澡人人透人人爽 | 国产精品久久久久久久久久免费看 | 国产亚洲精品美女久久久久久久久久 | 国产中文视频 | 精品国产成人 | 噜噜噜噜噜色 | 在线观看亚洲 | 久久久久国产一区二区三区四区 | 欧美视频精品在线 | 欧美亚洲视频在线观看 | 欧美日韩免费一区二区三区 | 久久精品国产精品青草 | 国产精品久久久久久久久久久新郎 | 这里只是精品 | 韩国一区二区视频 | 91精品国产综合久久福利软件 | 国产黄免费 | 午夜精品一区二区三区在线视频 | 曰本人一级毛片免费完整视频 | 免费一级毛片免费播放 | 午夜视频在线免费观看 | 色婷婷狠狠 | 美日韩一区二区 | 亚洲欧美另类久久久精品2019 | 91精品一区二区三区久久久久久 | 黄色在线免费观看视频网站 | 日本久久影视 | 亚洲午夜精品片久久www慈禧 | 羞羞视频免费网站 | 国产免费一区二区三区 | 欧美午夜一区二区福利视频 | 国产精品美女在线观看 | 亚洲一本|