Здравствуйте, Sinclair, Вы писали:
A>>А maintainability это что? Чем проще код, тем лучше maintainability.
S>Смотря что включать в понятие "код".
S>Например, linq2db — адски сложен по сравнению с прямым использованием ADO.NET.
S>Там под капотом такое, что шуба заворачивается.
S>Когда в C# завозили linq, многие скептики выступали в том же ключе: дескать, там "хрен пойми, что происходит", "мало того, что надо знать SQL, так теперь надо ещё и знать, во что вся эта порнография развернётся", и "да я проще руками все эти джойны напишу".
S>При этом маинтейнить приложение, использующее linq2db, в разы проще, чем традиционные для начала 2000х DAL и CRUD-хранимки.
Да, я имею в виду именно использование. Какой смысл программисту, решающему бизнес-задачу, лезть в исходники linq2db? Только если что-то пойдет не так.

Также программисты на plsql/tsql в потроха субд не лезут. Кстати, а linq2db или dapper можно подключить к базе?
A>>Вот, про что и разговор: неудобная обвязка, ограничение по версии рантайма, по версии языка. Думаю, есть проблемы, если сборка использует нативный код или кодогенерацию. И зачем все это?
S>Для того, чтобы ваше приложение обошло конкурентов
Каким образом? Вы заставляете пользователя покупать sql server, а у него уже может быть есть корпоративный сервер с oracle, или он не прочь на postgres посидеть, или ему для дома вообще sqlite достаточно.