快速业务通道

将ASP.NET MVC框架应用巧妙移植到手机

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-20
       this.RetrieveDeviceFolderName (request.Browser.Browser),
                                          viewName);

                 result = this.ResolveView (controllerContext, mobileViewName, masterName, useCache);

                 if (result == null ||  result.View == null)
                 {
                     mobileViewName =  string.Format(
                                              CultureInfo.InvariantCulture,
                                              "Mobile/{0}",
                                              viewName);

                     result = this.ResolveView (controllerContext, mobileViewName, masterName, useCache);
                 }
             }

             if (result == null || result.View ==  null)
             {
                 result = this.ResolveView (controllerContext, viewName, masterName, useCache);
             }

             return result;
         }

         protected virtual ViewEngineResult ResolveView (ControllerContext controllerContext, string
         viewName, string masterName, bool useCache)
         {
             return base.FindView(controllerContext,  viewName, masterName, useCache);
         }

接下来要做的事情是,在Global.asax文件的Application_Start事件中登记所 有设备和浏览器类型。 MobileCapableViewEngine程序集配置了两个默认设备文 件夹映射;一个是针对iPhone,被映射到View\Home \Mobile\iPhone文件夹,另一 个是针对Windows手机,被映射到View\Home\Mobile\WindowsMobile文件夹。在 RegisterViewEngines函数中添加实例到引擎集合之前,开发者可以通过修改 MobileCapableWebFormViewEngine类的DeviceFolders属性,来实现删除或增加新 文件夹映射。请看以下代码片段。

public static void RegisterViewEngines(ViewEngineCollection  engines)
         {
             var engine = new  MobileCapableWebFormViewEngine();
             engine.DeviceFolders.Clear();
             engine.DeviceFolders.Add("Pocket IE",  "WindowsMobile");
             engine.DeviceFolders.Add("AppleMAC-Safari",  "iPhone");
             engine.DeviceFolders.Add("Safari",  "iPhone");

             engines.Clear();
             engines.Add(engine);
         }

移植现有ASP.NET应用到手机

一旦设备和视图的登记完成后,拷贝粘贴现有ASP.NET MVC框架应用(你希望移 植到手机的项目)到TestMobileWebApplication项目中。反之,你也可以增加 MobileCapableViewEngine程序集到你现有MVC项目中,以进行必要的修改。

下面我将用到之前使用MVC框架 2.0创建的

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号