Я думаю, это зависит от того, насколько важна функциональность. То, что вы пытаетесь сделать, похоже на то, чего пытается достичь Smart Client Application Block . Так что, вероятно, стоит разобраться, как он справляется с подобными ситуациями.
По памяти, я думаю, большинство приложений, о которых я слышал, на самом деле пытаются кэшировать данные. Таким образом, приложение обрабатывает локальную копию базы данных и синхронизируется с оперативной, когда оно может подключиться.
SQL Server Express, например, позволяет синхронизировать базу данных с другой базой данных SQL Server по сети.
Таким образом, в основном это зависит от ваших данных: если у вас может быть локальный кеш, из которого работает пользователь, и который вы можете синхронизировать позже, тогда вы можете пойти с этим. В противном случае описанный вами подход звучит так, как будто он должен работать.