Как реализовать клиент серверное мобильное приложение для Windows Phone?

Есть задумка для мобильного приложения. Из доступных платформ выбрал windows phone, так как уже год с лишним пишу на asp.net mvc, да и c# как язык как то ближе. Приложение будет позволять регистрироваться, авторизовываться, да и весь контент хранить на сервере. Так как опыта разработки мобильных приложений нет совсем, у меня возникли некоторые вопросы.

1) Как реализовывать серверную часть?
Я бы просто создал mvc'шный сайт который бы принимал http запросы от приложения на телефоне. Например для регистрации был бы просто запрос вида mysite.net/register?login={newlogin}&pass={newpass}. Далее всевозможные проверки, если всё срослось - юзверь создался. Это было бы правильно? Так делают?

2) Как хранить сессию пользователя?
В веб приложениях обычно используют сессию или куки. В мобильных, по моему, есть хранилище настроек "ключ-значение". Я думаю хранить признак того что пользователь авторизован в этом хранилище. Это правильно?

3) Про Xaml(наверное). Тут я хочу спросить про разметку. В приложении нужны повторяющиеся одинаковые элементы, небольшие плашки, такие используются практически в каждом мобильном приложении. Например в недавно вышедшем приложении Хабра такие используются для вывода постов. Как такие реализовать? Может быть использовать какой то готовый контрол? Как реализовать пагинацию при прокрутке?

Пока что всё, буду благодарен за ответы.
  • Вопрос задан
  • 3378 просмотров
Решения вопроса 1
omelics
@omelics
1. На настоящий момент ASP.NET MVC поддерживает же Web API. Почему бы его не использовать? Очень удобно как раз для разработки API для клиента. (www.asp.net/web-api);

2. В Windows Phone приложениях настройки рекомендуется хранить в IsolatedStorageSettings.
Пример использования и хелперный класс для реализации простого кэширования любых данных опубликовал на PasteBin (pastebin.com/4p5j18u9). Стоит отметить, что хранение пароля пользователя в открытом виде в IsolatedStorageSettings не рекомендуется. Для таких случаев лучше его зашифровать. Пример можно посмотреть на SOF (stackoverflow.com/questions/8985717/is-there-a-sta...

3. Для использования в разных местах приложения одинаковых элементов целесообразно добавить в проект UserControl, определить его дизайн (+ логику) и использовать в любом месте в приложении. Если предполагается, что это какой-то элемент, который располагается на каждой странице на одном и том же месте (какой-нибудь заголовок, например), то можно создать новый стиль и в нём изменить шаблон PhoneApplicationFrame. PhoneApplicationFrame - это корневой элемент в разметке Windows Phone приложения, в нём уже непосредственно рендерятся страницы приложения PhoneApplicationPage, собственно. Пример изменения шаблона можно посмотреть на SOF (stackoverflow.com/questions/17569403/phoneapplicat...
Для пагинации при прокрутке, нужно уже конкретный случай рассматривать. Самый простой -- использовать встроенный контрол Pivot, в него добавлять PivotItems, смена которых будет осуществляться свайпами влево-вправо.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы