日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
在ASP.NET中替換Sys.Services的方法

使用自定義類替換Sys.Services.ProfileService對象

一般來說,這是最容易想到的辦法。我們可以寫一個(gè)類替換Sys.Services._ProfileService 類(這個(gè)類完全通過 prototype擴(kuò)展,因此對于繼承非常友好),甚至完全重寫一個(gè)類,這個(gè)一般就看具體情況了。假設(shè)我們已經(jīng)定義了這么一個(gè)類 “Jeffz.Services.ProfileService”,并將其包含在MyProfile.Service.js中,就要開始使用了。那么還要注意些什么呢?

需要注意的就是順序,我們一般會使用ScriptManager引入該JS,如下:

 
 
 
  1.  ID="ScriptManager1" runat="server" 
    EnablePartialRendering="false"> 
  2.  
  3.  
  4.  

***行引入的是 MicrosoftAjax.js,它之中定義了ASP.NET AJAX中默認(rèn)的ProfileService,而緊接著就是對于ProfileService的使用:設(shè)定其Path以及預(yù)加載的 Properties。在引入之后千萬不能忘了要將這些信息進(jìn)行保留。但是這兩者之間無法插入任何代碼,因此我們可以在 MyProfileService.js里添加如下的代碼,以保留這些信息:

 
 
 
  1. var path = Sys.Services.ProfileService.get_path();  
  2. if (!path)  
  3. {  
  4. path = Sys.Services._ProfileService.WebServicePath;  
  5. }  
  6. var properties = Sys.Services.ProfileService.properties;  
  7. var newnewInstance = new Jeffz.Services.ProfileService();  
  8. newInstance.set_path(path);  
  9. newInstance.properties = properties;  
  10. Sys.Services.ProfileService = newInstance

當(dāng)然,可能代碼會根據(jù)實(shí)際情況略有不同,但是注意JavaScript引入以及執(zhí)行的順序,在做任何自定義工作時(shí)都是非常重要的。

  有人也許會問,既然已經(jīng)重新定義了自己的實(shí)現(xiàn),為什么還要將其“偽裝”成默認(rèn)的ProfileService呢?因?yàn)檫@種“自定義”其實(shí)并不為“官方” 所承認(rèn),這么做能夠保證了兼容性,保證了第三方的組件也能使用Profile Service,即使它們沒有“意識”到?jīng)]有使用ASP.NET AJAX提供的默認(rèn)Profile Service。以上介紹在ASP.NET中替換Sys.Services的方法

【編輯推薦】

  1. ASP.NET中的WebRequestExecutor
  2. IIS6的ASP.NET ISAPI請求處理過程
  3. ASP.NET中的備份
  4. 淺談ASP.NET ISAPI
  5. ASP.NET的IIS ISAPI extension

文章題目:在ASP.NET中替換Sys.Services的方法
URL網(wǎng)址:http://www.dlmjj.cn/article/dpohcdj.html