Консольное приложение Entity Framework подключается к неправильной базе данных.

У меня есть первое веб-приложение с кодом EF, которое работает нормально и правильно подключается к серверу базы данных. Я добавил в решение консольное приложение, чтобы проверить логику службы, которая будет работать вместе с приложением.

У меня была головная боль, почему консольное приложение не сохраняло данные, поэтому я сократил это до простой выборки из базы данных, и оказалось, что исходное консольное приложение сохраняло запись, но в другую базу данных, чем то, что указано в строке подключения.

Вот строка подключения из app.config:

  <add name="DatabaseContext" connectionString="Data Source=xxx.xx.x.xx; Initial Catalog=OKWU_Gateway; User ID=xxxxx; Password=********; Trusted_Connection=False;" providerName="System.Data.SqlClient" />
  <add name="DevelopmentEntities" connectionString="metadata=res://*/EntityModel.csdl|res://*/EntityModel.ssdl|res://*/EntityModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=;Data Source=|DataDirectory|\OKWU_Gateway.mdf" providerName="System.Data.EntityClient" />

DatabaseContext —

Консольное приложение очень простое

    Database.SetInitializer<DatabaseContext>(null);
    static void Main(string[] args)
    {
        using (DatabaseContext db = new DatabaseContext())
        {
            var query = from u in db.Users where u.Id == 1 select u;
            foreach (User u in query)
            {
                Console.WriteLine(u.Id + " " + u.FirstName + " " + u.LastName);
            }
            Console.ReadLine();
        }
    }

но вместо подключения к БД на удаленном сервере оно подключается к sqlexpress на dev и попасть в эту базу данных.

UniversityGateway.Data.DatabaseContext

Я попытался изменить строку подключения, чтобы указать |DataDirectory| к строке подключения SQL, и это не имело никакого значения. Строки подключения такие же, как и в web.config, и, как я уже сказал, веб-приложение работает нормально.

Любые идеи о том, что мне не хватает, или указать мне правильное направление, чтобы решить эту проблему?

6
задан numaroth 23 January 2015 в 22:20
поделиться