Tsiren Naimanov: Вообще-то выбора особо нет, это у вас работа с API, все подходит. Ключевое слово WinRT, что бы не выбрали смотрите нужно ли вам работать под ним. Ну и работа с DNS (кэширование запросов) и кукисами. Если будете скачивать нужно отдавать прогресс в ГУИ.
Есть еще RestSharp, но я не уверен в статусе проекта.
У вас скучная проблема. Если хотите конкретики - пишите хотя бы чем, на чем и как делаете миграции.
Три классических совета которые дают таких случаях (если я опять же правильно понял) и на которые все забывают.
1. Не использовать автоматические миграции.
2. У каждого разработчика должна быть последняя версия коде перед созданием миграции.
3. У каждого Up() должен быть протестированный Down().
Только тогда все миграции вверх/вниз будут идти без проблем.
Что касается вашей проблемы, то можно изменить историю миграций не делая самих миграций. Т.е. мы просто говорим что мол база, прими как факт что у тебя миграция 111. Как правило вызывается командой mark.
С технологией все норм.
Antony Ryabov: Ну таки есть методология.
Spotify, на пример использует Feature Toggle. Суть в том, что мы часто мержим в мастер даже не совсем готовые фичи. Просто ставим на них флаг/не показываем их пользователю. Таким образом команды должны часто обновлять локальную копию и быстрее заметят конфликт.
Плюс точек отката будет больше.
Radzhab: Я в нэнси только левой ногой.
Писал немного тестов для Self.Hosting, но там сервер запускается и умирает после каждого теста :)
Пишите тип данных после роута: "/{data:int}"
Вот вам пример, но он на self.host, запускаете и пока открыта консоль открываете в броузере localhost:1235/1 или localhost:1235/2
Там будет 2 разных картинки. https://dl.dropboxusercontent.com/u/13909566/Conso...
Покурив маны я понял что это называется "распределенная база данных" :).
Для энтерпрайза - Oracle, 1C умеет, есть Apache Cassandra. File Replication Service (FRS).
Но опять же надо отдельный сервер.
Для маленьких (embedded) проектов все сложнее.
OneDrive, Dropbox - нарываться на проблемы, плюс OneDrive не умеет делать дельта копи, копирует весь файл. Апи... бэкаплю туда. На вид быстрее копировать в папку и дать им самим делать дело. Тогда уж какой-то BittorentSync.
Мне вот понравился RavenDB, есть Embedded mode, при необходимости поднимает локальный сервер с гуи через броузер. Репликация настраивается в конфиге, дальше он сам. НО, моя программа не опен сорс, дев версия идет с одним пользователем. Влетаем на лицензию (хотя можно попробовать без).
Сейчас смотрю на Riak, его пишут суровые бородатые дядьки на Erlang :) Там это в основе системы. Выглядит обещающе. docs.basho.com/riak/latest
А так, видимо, идея так себе. Проще всего поднять самую дешевую базу на любом хостинге и тихо отправлять туда копию, а на клиенте вытаскивать маленькими частями постоянно в локальную базу.
Альтернатива на SQLite? Ну видимо делить базу на маленькие базы по 10Мб (чтобы все не таскать по сети), делать в одной из них индекс для синхронизации и недо-рейд по остальным. Одну обновляем и копируем обновление в другие. Велосипед тот еще, правда все уже написано в других проектах, его надо только собрать :)
Короч все так себе. Файловых датабаз вообще не очень много )
Грубо говоря он не будет аллокировать память если вы не обращаетесь к ней. Но если вы попытаетесь сделать что-то вроде .Count(), посчитать все элементы, то сразу снова вылетите.
Как-то так можно.
foreach(var line in ReadLines("123"))
{
Console.WriteLine(line);
}
SO решили эту проблему по другому. И аж целых два подкаста сделали на тему. Там ситуация разбирается довольно подробно, проблема та же. Очень советую послушать.
Суть в том, что пользователь пришел сюда за ответом. На том же SO есть куча дубликотов, но в каждом из них есть ссылка на ответ. Плюс можно получать карму просто задавая хорошие вопросы. Если люди видят что человек хотя бы пытался, будет апвот.
Опять же люди с кучей рейтинга могут сделать +500 своему вопросу и получить кучу внимания.
А на хабре наблюдается инфляция рейтинга и давно пора вычистить хейтеров. Это плохо в перспективе, не дает роста новых пользователей.
jsonutils.com
П.С.: не понимает Dictionary.