Я не могу использовать конфигурационные файлы, я должен инициализировать соединение с базой данных во время выполнения.Это база данных SQL Server 2008.
Поскольку я обновил EF до более новой версии ADO.NET Entity Framework 4.1 - обновление 1, Database.Connection.ConnectionString больше не работает для меня.Строка подключения в файле конфигурации работает нормально, но мне нужно определить ее динамически.Поэтому я нашел другой популярный способ сделать это с помощью DefaultConnectionFactory, например так:
Database.DefaultConnectionFactory =
new SqlConnectionFactory("Server=local;Initial Catalog=Db1;Trusted_Connection=True;")
Однако в случае, если я получил сообщение об ошибке при попытке доступа к любому производному объекту DbSet: Поставщик не возвратил ProviderManifestTokenстрока.---> System.Data.SqlClient.SqlException: произошла ошибка, связанная с сетью или экземпляром, при установлении соединения с SQL Server.Сервер не найден или не был доступен.Убедитесь, что имя экземпляра указано правильно и что SQL Server настроен для разрешения удаленных подключений.(поставщик: поставщик именованных каналов, ошибка: 40 - не удалось открыть соединение с SQL Server)
ОБНОВЛЕНИЕ: проблема возникает только в том случае, если база данных еще не создана и должна быть восстановленаEF.Если оно существует, такого исключения не возникает, поскольку я запрашиваю данные в БД.Если я определяю одну и ту же строку подключения в конфигурационных файлах, у меня все в порядке (генерация базы данных и запрос данных)
Что я делаю не так?Спасибо