如何以及為何創建Search .NET版(3)_.Net教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!

      推薦:ASP.NET網絡編程中常用到的27個函數集
      1、DateTime 數字型 以下為引用的內容: System.DateTime currentTime=new System.DateTime(); 1.1 取當前年月日時分秒 currentTime=System.DateTime.

      構建并行解決方案

      當時我們遇到的最大挑戰是,我們在開發 Search 2.5 的同時,也在將整個 Search 應用程序移植到 .NET 框架的 ASP 技術。由于要在 PDC 日期之前推出此應用程序并將其移植到 .NET,周轉時間緊,因此我們當時決定同時推出這兩種版本,并將它們同時上市。很明顯,這是一項艱巨的任務,因為我們必須管理新的版本,了解新型 .NET 框架的所有功能和新的語言隱喻,構建具有各種軟件平臺服務的服務器,等等。

      關于我們是如何搞成這個項目的,還有一段有趣的故事呢。為了確保同時推出兩種版本(Search 2.5 和 .NET 框架,我們在項目規劃階段確定了首先把握住哪些組件不變、哪些組件在開發過程中變化最大以及哪些組件適合于哪種技術和語言。

      我們還及早確定目標,努力分解此應用程序,并按照客戶可能會采用的方式移植。因為我們 microsoft.com 的人總是認真對待客戶在進行技術決策和研究投資回報時面臨的各種問題,所以,我們將此應用程序移植過程分解成許多部分,每個部分都盡可能與客戶可能采取的方法接近。我們希望確保做好每項工作,其中包括最簡單的移植(即,小腳本移植到 Jscript 類)直到最大的時間和技術利益投入 – 充分利用 C# 編程語言完全移植到 .NET 框架 (100% 可管理的代碼空間)。

      下面是我們在應對這個挑戰時所采取的一些步驟:

      首先,我們將主要的 ASP 頁面轉換為 ASP 。最初,我們是通過 .NET Reflection 技術調用小腳本,這樣我們可以在運行時通過查詢類型庫來調用典型的 COM 對象。

      重要知識:我們從具有 ASP 的編程模型出發(其中,數據、業務邏輯以及表示全都被混合在一起),然后采用 ASP 的一種完全面向對象的方法,最后是數據分離、編程以及 UI。
      其次,處理最簡單的小腳本并將其移植。BestBets 是最簡單的組件,并且不依賴于 COM 組件。我們決定使用 System.IO、XML Data Navigator 以及 C# 編程語言將這個組件作為 DLL 移植。我們希望將這個組件完全移植到受控環境,并使其充分利用 XML Data Navigator。

      重要知識:我們了解了 NewXml 命名空間。同時,我們在移植組件時去除了 .NET Reflection。這樣我們就可以在本地調用這些組件。
      然后,我們以同樣方式處理 Vocabulary 小腳本。這個組件在復雜性和代碼行方面處于此應用程序的中間。它由一個小腳本組成,這個小腳本包含用于 Search 的業務和文本解析規則,并對 C 組件進行調用,我們創建該組件的目的是包裝 COM 對斷字程序的引導調用。這個組件在移向受控空間方面具有最大優點。這個復雜組件被全部移植到 .NET 框架和 C# 編程語言。這需要一些技巧,因為,它包含更為復雜的函數邏輯,并需要利用一個自定義 COM 對象。但這還不算太難。下一步將拋棄 C 包裝并直接調用這些接口。

      重要知識:我們更改了函數和邏輯以便受益于象類型安全這樣的 C# 的關鍵優勢。在使用 Jscript 時,開發人員必須銘記每個變量的類型(整數、字符串)。C# 會為您做到這一點。所有變量在聲明時確定,并且 C# 會檢查您的工作以便確保沒有越界。這在處理復雜代碼時幫助很大。備注: 在 JScript 的下一個版本中,程序員將可以選擇完全確定變量的類型。
      移植最終組件:SearchResults。最初,我們通過 .NET Reflection 調用這個組件,而且情況良好。由于這個代碼太大并相當復雜,同時由于在我們推出 Search 2.5 版本之前對該版本作了一些根本性的更改,因此移植該代碼的工作一直持續到現在。在 .NET 測試版中找不到它,但該項工作已取得重大進展。10 月份晚些時候將發布該版本的更新。

      總之,這個體系結構是一個杰作。我們擁有一些真正的 C# .NET 組件,我們擁有所有的 ASMX 頁面。而且,我們演示了可以通過 Interop 調用自定義 COM 對象,以及通過 .NET Reflection 調用小腳本。傳統的對象(比如,SearchResults)可以消耗由 C# 對象(比如,Vocabulary) 創建的數據結構,這是非常好的事。

      在您審查 .NET Search 測試版之前值得一提的是,這個體系結構中沒有用戶界面。您所看到的是一項 Web 服務的默認情況。我們本來是可以添加一個 UI 的,但是我們之所以保留成現在這樣,是想讓您看到其本來面目。

      請作者聯系本站,及時附注您的姓名。聯系郵箱:mb5u#vip.qq.com(把#改為@)。

      分享:關于ASP.NET在IIS一些問題的經驗總結
      很多開發人員對于IIS和ASPNET的安裝等問題困擾,特此做下面的小總結,請大家多交流!iis 壞了修復辦法! 一般IIS運行不了ASP.NET,試一下下面四種方法,99%有效: 1。.NET 安裝的順序應該是

      共3頁上一頁123下一頁
      來源:模板無憂//所屬分類:.Net教程/更新時間:2008-08-22
      相關.Net教程