這篇文章主要介紹“怎么遷移ASP.NET”,在日常操作中,相信很多人在怎么遷移ASP.NET問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”怎么遷移ASP.NET”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
公司主營業(yè)務(wù):成都做網(wǎng)站、網(wǎng)站建設(shè)、移動網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)是一支青春激揚、勤奮敬業(yè)、活力青春激揚、勤奮敬業(yè)、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴謹、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)推出萊陽免費做網(wǎng)站回饋大家。
Web Standards / Web標準
做Web應(yīng)用首先要懂做Web,現(xiàn)在提倡的是Web Standards,其所涉及的XHTML、CSS、JavaScript是一定要懂的。很多ASP程序員可能已經(jīng)熟悉老式的表格排版方式,但這是應(yīng)該被丟棄的東西。很多宣揚Web Standards的文章都給出了不少表格排版的壞處,那些我就不多說了,我要說的是不使用Web Standards對ASP.NET程序員最致命的一個壞處。由于MS也向Web Standards靠攏了,所以ASP.NET 2.0被設(shè)計為兼容Web Standards的,這時候所有的控件都被設(shè)計為語義與表現(xiàn)分離。如果你不遵守此分離規(guī)則去分工,那么隨著你和你的美工輪流編織這張Web,最終有一天這張Web就會把你和你的美工給綁死。
要學好XHTML+CSS的設(shè)計,不僅僅需要觀念上的轉(zhuǎn)變,還需要開發(fā)工具上的更換。很多人無法適應(yīng)Web Standards的設(shè)計觀念,是因為他們還在用老工具,于是總是覺得用舊觀念設(shè)計更方便效果更好。因為我相信,只有當你適應(yīng)了新的工具,體驗到新工具帶來的便利和高效,你才會樂意接受觀念上的轉(zhuǎn)變。
說到開發(fā)工具,我假設(shè)熟練的ASP程序員都能夠完全脫離WYSIWYG的編輯器而以純文本方式編寫XHTML和CSS,因為XHTML+CSS的開發(fā)要求你和你的美工都具有這樣的能力。以往美工可以安樂地對著Photoshop,這是他們最習慣使用的工具,操作起來有精確性的同時又可視化,他們可能有一半的時間是用眼睛思考的。然而現(xiàn)在改用CSS就沒這樣的好事情了,能夠好像Photoshop那樣設(shè)計CSS的軟件還沒有誕生,修改任何一條CSS規(guī)則都會應(yīng)用到所有頁面上,至于每一個頁面哪些元素會匹配這條CSS規(guī)則這需要美工用腦袋記著,不再是可視化。雖然改一下CSS規(guī)則然后看一下幾個頁面的預(yù)覽這也是一種選擇,然而這比Photoshop中調(diào)整參數(shù)時的即時預(yù)覽要差多了,所以讓美工學會在腦袋里進行預(yù)覽是很重要的,這樣才能寫出好的CSS來。
如果要推薦一些工具的話,我會選擇Visual Studio 2005 + Expression Web Beta 1,前者開發(fā)人員自己用,后者是美工用來設(shè)計或修改Web頁面用的。
OOP / 面向?qū)ο蟪绦蛟O(shè)計
OOP可以說是ASP.NET的基礎(chǔ),沒有OOP就沒有ASP.NET控件這個概念,也就沒有了ASP.NET與ASP最巨大的差別。
從最原始的CGI開始,Web應(yīng)用開發(fā)者無非就在設(shè)計著這樣一種邏輯——根據(jù)輸入的Request生成輸出的Response,大多數(shù)情況下兩者都是平板的純文本字符串,除非設(shè)計上傳/下載文件。ASP引入了Request和Response對象,讓處理稍微顯得立體了一些,你不再需要手動分析 Request文本,它能夠幫你將提交上來的Form、QueryString、Cookies等參數(shù)提取出來供你使用。Session和 Application對象的引入讓你在不了解細節(jié)的情況下進行特定目的的存儲,Server對象的引入則為你提供了很多有用的函數(shù)。
ASP遇到的***問題是,立體的Request提供出來的數(shù)據(jù)卻是平板的,整個處理過程也是平板的。那就說,在處理過程中的任何一個步驟,都可以訪問任何一個Request數(shù)據(jù)項,然后把結(jié)果輸出到Response中,這導致程序代碼的耦合度很高。如果輸出的Response有問題,你沒辦法明確指出處理過程中的哪一段應(yīng)該對它負直接責任。
ASP.NET嘗試通過引入控件的概念來解決這個問題。每一個控件都是一個獨立的邏輯單元,它僅僅對自己內(nèi)部的邏輯負責,并且盡可能減低對外部環(huán)境的依賴性??丶辉傧衿胀ǖ腁SP邏輯那樣它可以亂訪問Request和Response,它的能力應(yīng)該受到限制:
一個控件僅僅應(yīng)該讀取它生成的HTML元素提交回來的數(shù)據(jù),否則應(yīng)該考慮通過其他控件的屬性來獲取,而不是從Request獲取。詳細說明如下:
◆IPostBackDataHandler和IPostBackEventHandler就是為控件處理自己生成的HTML有關(guān)的參數(shù)與事件而設(shè)計的。
◆如果控件要獲取的數(shù)據(jù)來自子控件,則應(yīng)該通過子控件的屬性獲取。
◆如果控件要獲取的數(shù)據(jù)來自外部控件,則應(yīng)該請求父控件或環(huán)境幫忙獲取。
一個控件生成的HTML應(yīng)該是環(huán)境無關(guān)的,也就是無論其他控件生成怎樣的HTML都不會和此控件生成的HTML沖突。詳細說明如下:
◆Render用于生成本控件的HTML。
◆如果控件要生成的HTML存在可能引起沖突的情況,則應(yīng)該請求父控件或環(huán)境處理。例如最常見的生成腳本,為了避免同一段腳本多次輸出就應(yīng)該向ClientScriptManager注冊腳本,然后讓它來覺得腳本的輸出。
當然,上面這些規(guī)則你喜歡怎么違反都行,沒有人規(guī)定你一定要這樣做的。但只有遵守了這些規(guī)定,你才算得上是一個ASP.NET程序員,否則就僅僅是一個使用著ASP.NET框架的ASP程序員。
要遵守這些規(guī)則,首先要把OOP學好,這樣你才會明白為什么要遵守以及如何去遵守。因為規(guī)則是死的,而我們面對的情況可能是靈活多變的,當面對一個新的情形時應(yīng)該選擇如何設(shè)計呢?顯然你不一定能夠從上面的規(guī)則中找到一條來參考,這時候你的OOP思想及價值觀就起決定性作用了。
HTTP協(xié)議
HTTP協(xié)議其實沒什么好說的,一個熟練的ASP程序員必須懂的東西,而且可能從你學習ASP的那天起它就沒改變過。只不過對于ASP程序員來說,這東西是透明的,因為我們直接使用Request,這和直接處理HTTP協(xié)議沒太大的區(qū)別。但是到了ASP.NET,Request已經(jīng)被隱藏起來了,你應(yīng)該避免使用它,這時候你就需要重視HTTP協(xié)議了,否則底層通訊發(fā)生了什么你完全不知道。
到此,關(guān)于“怎么遷移ASP.NET”的學習就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>
當前題目:怎么遷移ASP.NET
地址分享:http://weahome.cn/article/jjjosj.html