Идея так себе использовать на сайте sqlite, поставьте нормальную базу.
Что же до остального, откройте 1 раз соединение и не закрывайте его. В общем используйте синглтон.
Как другой вариант используйте примитивы синхронизации и будет вам счастье.
Собственно вот именно то что и будет делать мобильник
Why?
Now, smartphones are very powerful, have a lot of sensors, and are easy to program.
For example, the Nexus 4 has a lot of hardware features, useful for a quadcopter:
-Accelerometer, gyrometer, magnetometer for orientation estimation.
-GPS and barometer for positioning.
-Wi-Fi and 3G for communicating with the ground computer.
-Two cameras.
-Quad-core CPU and GPU for fast control.
-Large storage space to record movies, take pictures, log flight data...
2 мегабайт мелко нашинкованного ява-скрипта вы уверены что это недостаточно сложно? Лично я нет. И да в итоге человек будет знать как работает приложение, что это ему даст?
Реакция на UI или пути доступа к api.
Под виндоуз можно собрать только полностью .NET вариант. Который будет тормознутый донельзя. Что нибудь больше чем курсовая работа нужно мудрить. В общем случае я бы вообще не писал приложение .NET для моно.
Ибо граблей много, а толку мало.
Толстый Лорри, Я просто с трудом представляю что человек задавший этот вопрос не использовал пакетный менеджер. А студия подсунет самый популярный адошный драйвер. И да я еще не упомянул проблемы 32/64 бита.
Ни что не мешает вынести файлы из веб сервера. Пользователю после формы выдавать симлинк на файл. Эти симлинки удалять по таймеру, например раз в 10 минут.
схема директорий
/var/www/site1.ru
/var/www/data/uploads/filebase/xxxx.pdf
тогда запрос по адресу
site1.ru/data/uploads/filebase/xxxx.pdf
отдаст форму
после заполнения которой будет получена ссылка вида
site1.ru/data/guid/uploads/filebase/xxxx.pdf
Разные плюшки типа проверки по кукам можно вставить дополнительно
Толстый Лорри, В том то и дело что nuget и уж тем более entity framework и другие замечательные вещи подразумевают ADO. А вот что бы нативный драйвер прицепить это постараться нужно. Вот что пишут на StackOwerflow
System.Data.SQLite is an ADO.NET adapter for SQLite.
System.Data.SQLite was started by Robert Simpson. Robert still has commit privileges on this repository but is no longer an active contributor. Development and maintenance work is now mostly performed by the SQLite Development Team. The SQLite team is committed to supporting System.Data.SQLite long-term.
"System.Data.SQLite is the original SQLite database engine and a complete ADO.NET 2.0 provider all rolled into a single mixed mode assembly. It is a complete drop-in replacement for the original sqlite3.dll (you can even rename it to sqlite3.dll). Unlike normal mixed assemblies, it has no linker dependency on the .NET runtime so it can be distributed independently of .NET."
Что же до остального, откройте 1 раз соединение и не закрывайте его. В общем используйте синглтон.
Как другой вариант используйте примитивы синхронизации и будет вам счастье.
что то типа
lock(_locker){
// sql related code
}