原創(chuàng)|其它|編輯:郝浩|2012-12-27 11:16:21.000|閱讀 1171 次
概述:作為長期使用.NET的開發(fā)人員要怎么為移動(dòng)應(yīng)用開發(fā)選擇合適的開發(fā)工具和框架?慧都為您總結(jié)介紹最新最先進(jìn)的工具和技術(shù),幫助.NET開發(fā)者對(duì)移動(dòng)開發(fā)有一個(gè)新的認(rèn)識(shí)。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
作為ASP.NET開發(fā)人員,不可能不知道日益普及的移動(dòng)應(yīng)用程序。但是如何為移動(dòng)開發(fā)選擇合適的移動(dòng)開發(fā)工具和框架,這個(gè)您清楚嗎?下面慧都將為您總結(jié)介紹最新最先進(jìn)的工具和技術(shù),以幫助ASP.NET開發(fā)者對(duì)移動(dòng)開發(fā)有一個(gè)新的認(rèn)識(shí)。
據(jù)統(tǒng)計(jì),幾大電商網(wǎng)站與去年相比, 今年的手機(jī)瀏覽用戶增加了400%!雖然電商網(wǎng)站已經(jīng)對(duì)其做出了反應(yīng),推出了支持移動(dòng)設(shè)備的專門網(wǎng)站,不過更多傳統(tǒng)網(wǎng)站還停留在桌面瀏覽階段,并沒有專為移動(dòng)環(huán)境重新設(shè)計(jì),移動(dòng)瀏覽體驗(yàn)可以說還非常糟糕。
隨著移動(dòng)設(shè)備的發(fā)展,開發(fā)人員面臨的第一個(gè)技術(shù)挑戰(zhàn)就是處理不同視窗的大小。桌面瀏覽器的視窗可以在800px和1440px之間,但手機(jī)瀏覽器窗口可能是320px或480px。處理多樣性的視窗大小就是一個(gè)巨大的挑戰(zhàn)。不僅如此,每個(gè)移動(dòng)設(shè)備都有自己的特性,可能會(huì)導(dǎo)致HTML,層疊樣式表(CSS)和 JavaScript 支持的變化,如何應(yīng)對(duì)這些變化也是非常困難的。
當(dāng)瀏覽器向Web服務(wù)器發(fā)送請(qǐng)求時(shí),ASP.NET中有一個(gè) httpRequest.Browser.IsMobileDevice 的屬性可以根據(jù)請(qǐng)求中的信息,測定發(fā)出請(qǐng)求的設(shè)備類型。移動(dòng)設(shè)備的瀏覽器也有MobileDeviceManufacturer和 MobileDeviceModel 屬性可以為ASP.NET提供物理設(shè)備類型。除此之外,ASP.NET其他能夠檢測出的屬性意義就不大了。
如何讓網(wǎng)站更精確的檢測出移動(dòng)設(shè)備的相關(guān)信息?可以通過連接一個(gè)叫無線通用資源文件(WURFL)的數(shù)據(jù)庫項(xiàng)目,該項(xiàng)目可以用于檢測移動(dòng)設(shè)備,并為.NET API加載該移動(dòng)設(shè)備的相關(guān)配置信息。試用一下代碼便可以在ASP.NET MVC中渲染設(shè)備的屬性了。
@{ var wurflDataFile = ".."; var wurflPatchFile = ".."; var configurer = new InMemoryConfigurer() .MainFile(wurflDataFile) .PatchFile(wurflPatchFile); var manager = WURFLManagerBuilder.Build(configurer); var device = mgr.GetDeviceForRequest(HttpContext.Current.Request); var caps = device.GetCapabilities(); } @foreach (var cap in caps) { <div>@cap.Key = @cap.Value</div> }
還有一個(gè)工具叫51Degrees.mobi,它也提供與WURFL相似的移動(dòng)設(shè)備檢測功能,除了能夠?yàn)锳SP.NET應(yīng)用程序提供這個(gè)功能之外,還可以在檢測完后,提供跳轉(zhuǎn)至該設(shè)備適合的頁面功能。
通過特定的視圖引擎,讓ASP.NET MVC 4支持了移動(dòng)視圖(其實(shí)ASP.NET MVC 3也提供了這種支持,不過它是通過一個(gè)附加的NuGet包來實(shí)現(xiàn)的)。這個(gè)自定義的視圖引擎允許MVC應(yīng)用程序根據(jù)檢測到的移動(dòng)設(shè)備和服務(wù),來創(chuàng)建一個(gè)合適該設(shè)備的視圖。
當(dāng)這個(gè)視圖引擎獲取移動(dòng)設(shè)備的瀏覽器請(qǐng)求時(shí),它會(huì)使用 httpRequest.Browser.IsMobileDevice 屬性返回一個(gè)擴(kuò)展名為 .Mobile 的視圖。這樣ASP.NET的開發(fā)者就可以創(chuàng)建兩個(gè)頁面視圖了,一個(gè)為Index.aspx或Index.cshtml(為Razor視圖引擎),再為移動(dòng)設(shè)備專門創(chuàng)建一個(gè) Index.Mobile.aspx 或 Index.Mobile.cshtml。這樣就實(shí)現(xiàn)了移動(dòng)設(shè)備專屬頁面視圖的創(chuàng)建。
確定了視窗尺寸之后,無論是網(wǎng)站還是應(yīng)用APP,都可以借助ASP.NET的開發(fā)工具完成了。下面是ASP.NET開發(fā)者必備的移動(dòng)應(yīng)用解決方案:
業(yè)界最優(yōu)秀的WEB應(yīng)用開發(fā)工具套包,超過300個(gè)控件,以超高性能和靈活的交互事件聞名 |
![]() |
功能全面,性價(jià)比高,超過90個(gè)子控件和和 45 種以上 MVC 擴(kuò)展程序。 |
![]() |
采用HTML5技術(shù)開發(fā),40種以上的子控件,完全符合移動(dòng)應(yīng)用的開發(fā)需求 |
![]() |
功能完整且實(shí)用的用戶界面套包,技術(shù)先進(jìn)且響應(yīng)及時(shí) |
![]() |
RadarCube ASP.NET & Silverlight 商業(yè)智能(BI)必備,OLAP表格和圖表的開發(fā)工具 |
![]() |
Stimulsoft Reports.Web for MVC 專門為ASP.NET報(bào)表開發(fā)而設(shè)計(jì)的控件,性能好且支持創(chuàng)建復(fù)雜報(bào)表 |
![]() |
Barcode Professional for ASP.NET ASP.NET應(yīng)用程序所需要的條形碼生成和讀取工具,無論是效率和支持類型上都是免費(fèi)工具無法比擬的 |
![]() |
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:慧都控件網(wǎng)