Для начала, и файл MDF может быть прочитан только экземпляром SQL Server.Если вы развертываете MDF, ваше приложение должно либо подключиться к SQL Server, предоставленному вашим конечным пользователем во время установки, либо развернуть свой собственный экземпляр, в последнем случае экземпляр SQL Server Express Edition.См. Как: установить SQL Server Express .В Visual Studio 2008 вы можете добавить предварительное условие для настройки MSI своего приложения, см. «Установка» загрузчика ClickOnce SQL Server 2008 Express для Visual Studio 2008 SP1 .
Вторая проблема заключается вНесмотря на широкое убеждение об обратном, распространение MDF в одиночку без LDF может привести вас в мир боли.Вы можете в итоге раздать несовместимый MDF, которому нужен LDF, чтобы завершить восстановление и войти в согласованное состояние.
Но более серьезной проблемой является ваш план развертывания двоичных файлов (MDF) вместо сценариев для развертывания базы данных.Это обречено на провал.Как только вы планируете выпустить v. 1.1 своего приложения, вы столкнетесь с нетривиальной проблемой замены пользовательского MDF (который теперь содержит данные, добавленные пользователем) на новый MDF.Вот почему гораздо лучше всегда развертывать сценарии обновления и забывать о MDF в своем проекте.