tutorial pages net mvc entre ejemplos diferencias asp asp.net-mvc cordova jquery-mobile mobile-website

asp.net-mvc - pages - web forms c# tutorial



Convertir un sitio MVC regular para usar en phonegap (5)

Tengo un sitio que ha hecho usando ASP.NET MVC y jQuery. ¿Es posible modificar mi proyecto existente sin tener que volver a trabajar para que se pueda utilizar en el Phonegap para crear aplicaciones para iPhone / Android?


Este es un enfoque: mueva su lógica a un proyecto MVC WebAPI (u otro REST / webservice), luego convierta el sitio MVC en un sitio simple html / javascript / css / image (sitio móvil). Luego refactorice su sitio móvil para usar Ajax / JS para consultar los servicios WebAPI / Rest que creó. Una vez que haya separado su código de esta manera, puede empaquetar el sitio móvil con Phonegap. No estoy seguro de cuánto trabajo será para usted o su proyecto. Si está utilizando una gran cantidad de Html Helpers o Razor markup en sus vistas, puede ser demasiado complicado.

El punto central de mi sugerencia aquí es separar la capa de la interfaz de usuario móvil y la capa de procesamiento del servidor para que solo pueda empaquetar la capa Html5 / UI / Javascript con Phonegap y dejar el procesamiento del servidor en su servidor web. No creo que deba explicar esto, pero obviamente la aplicación empaquetada con Phonegap no tendrá el marco MVC / .Net disponible en el dispositivo móvil para renderizar vistas o ejecutar controladores, etc. Al migrar su interfaz de usuario para que sea simple Html5 y Javascript puede usar Ajax / Jquery / Javascript en su backend, que probablemente querrá hospedar en ASP.Net MVC WebAPI.

Edit: Supongo que había algo de confusión acerca de mi sugerencia. No estoy diciendo que esta sea la única manera de hacerlo, pero con esto estoy familiarizado, ya que nuestro equipo construye nuestra aplicación de escritorio / web + móvil + phonegap + mvc4 + webapi + kendoui. Este patrón funciona bien para nosotros, así que quizás también lo sea para usted, o al menos le dé algunas ideas sobre cómo estructurar su solución. ¡Buena suerte!


La respuesta a su pregunta realmente depende del tipo de sitio que está intentando convertir. ¿Estás tratando de poner un marco nativo alrededor de HTML y convertir tu aplicación en una tienda de aplicaciones?

Si es de naturaleza mayoritaria o totalmente informativa y simplemente ha utilizado MVC para crear páginas tipo folletos, entonces debería ser bastante fácil de mover. Esto supone que hay poca o ninguna lógica aparte de la navegación de página a página.

Si su sitio, en cambio, transfiere una gran cantidad de datos que dependen de un servidor de servicios de fondo, deberá volver a diseñarlos para almacenar los datos localmente o para obtenerlos previamente a través de un manifiesto. A continuación, deberá implementar una estrategia que le permita enviar sus datos locales al servidor.

¿Tu aplicación necesita ejecutarse en un estado desconectado?


No estoy seguro pero necesita un servidor para compilar el ASP.NET, ¿no? así que no creo que eso funcione para ti. Creo que necesitas trabajar con AJAX para hacer tu trabajo ASP.NET y separar tu código ASP.NET y tu HTML-jQuery porque Phonegap quiere un archivo index.html. Puede almacenar sus archivos ASP.NET en un servidor difícil


Phonegap es una de las opciones si desea apuntar a múltiples plataformas móviles y puede ser el más utilizado. Ya que está usando jQuery, jQueryMobile será una ruta de curva de aprendizaje mínima para usar. El esfuerzo se realiza principalmente en la interfaz de usuario de front-end y dependerá de cuántas pantallas quiera diseñar para proporcionar un subconjunto o el conjunto completo de funciones que ya tiene en la interfaz de usuario web. Lo más probable es que tenga que rediseñar sus pantallas utilizando los widgets de interfaz de usuario de jquery-mobile documentados aquí . También es una buena manera de mostrarle a su cliente el diseño de pantalla inicial con navegación.


jquery mobile es excelente para aprender y diseñar, pero es lento en el control del navegador web en el que se produce la brecha del teléfono.

Necesitarás un marco más ligero para esto.

Puedes usar un control Inappbrowser para mostrar tu sitio en caso de que sea receptivo, pero no tendrás la cámara ni los contactos del dispositivo y ...

Eche un vistazo a: http://docs.phonegap.com/en/3.0.0/cordova_inappbrowser_inappbrowser.md.html#InAppBrowser