В разработке, то есть при использовании Visual Studio и его встроенного экземпляра IIS Express, я настроил свое веб-приложение для использования LocalDB с файлом MDF данных, находящимся в каталоге на моем компьютере, но не внутри каталога проекта, например, «C: \ MyAppData \ MyAppData.mdf», а не «C: [...] \ MyAppProject \ App_Data \ MyAppData.mdf».Могу ли я подключиться к файлу LocalDB MDF на компьютере из веб-приложения, которое выполняется на веб-сервере?
Это работает просто отлично при использовании Visual Studio/IIS Express, и строка подключения используется выглядит примерно так:
<add name="MyAppEntities" connectionString="metadata=res://*/MyAppModel.MyAppModel.csdl|res://*/MyAppModel.MyAppModel.ssdl|res://*/MyAppModel.MyAppModel.msl;provider=System.Data.SqlClient;provider connection string="data source=(localdb)\v11.0;attachdbfilename=C:\MyAppData\MyAppData.mdf;integrated security=True;connect timeout=30;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
Мой вопрос, после того, как развернуть приложение на веб-сервере разработки, возможно ли, что приложение может подключиться к тому же файлу MDF, размещенному на моем компьютере? Если да, то как? Если нет, почему бы и нет? Обратите внимание, что я не публикую файл MDF на веб-сервере разработки: я пытаюсь получить доступ к файлу MDF на своем компьютере из приложения, работающего на веб-сервере.
Мое предположение заключалось в том, что веб-приложение будет использовать строку подключения для поиска этого файла MDF на том, на каком компьютере работает приложение, но, видимо, это не так просто и может быть даже невозможным?
Это НЕ возможно. Вы не можете получить доступ к файлу на клиентской машине из веб-приложения. Есть слишком много причин, почему вы не можете этого сделать. Как вы узнаете путь к клиентской машине, Что касается безопасности, это просто не веб-приложения. –
Нет, файл '.mdf' - это действительно база данных ** SQL Server **, и если вы действительно хотите, чтобы несколько пользователей из веб-приложений использовали эту базу данных, вам необходимо установить ** сервер базы данных SQL Server ** на где-то в вашей сети, и пусть все подключаются к этому общему серверу. –
:-) Если вы просто делаете это для тестирования, попробуйте поделиться папкой, из которой находится файл MDF на вашем локальном компьютере, тогда вы можете изменить свое соединение строка, указывающая на общую папку. :-) технически он должен работать, но не рекомендуется для использования prod. –