2016-02-29 6 views
2

Когда я добавляю «строку подключения MVC» или что-то подобное, я получаю кучу вопросов/статей об этом, и все те, которые я прочитал, говорят, чтобы отредактировать файл Web.config , Есть ли причины, по которым это не работает в моем проекте?Строка подключения MVC Entity Framework не работает

В моем проекте используется Entity Framework, и теперь он работает на локальном db. Я редактировал 2x файлы Web.config (один в папке проекта, а другой в папке «Представления» - я действительно не знаю разницы). Эти файлы изначально не имеют никаких <connectionStrings> тегов, поэтому я добавил это вручную, для обоих файлов:

<connectionStrings> 
    <add name="DefaultConnection" connectionString="Data Source=mysite.database.windows.net;Initial Catalog=Developer;User ID=user;Password=pass" providerName=".NET Framework Data Provider for SQL Server"/></connectionStrings> 

.. но он все еще использует свою базу данных LOCALHOST. Есть ли очевидная вещь, которую я не вижу?

EDIT:

Удаление отладки и восстановление не работает.

Вот мой контекст класс

public class TrackerContext : DbContext 
{ 
    public TrackerContext() : base() {} 
    public DbSet<Toll> Tolls { get; set; } 
    public DbSet<TollRecord> TollRecords { get; set; } 
    public DbSet<Trip> Trips { get; set; } 
    public DbSet<TripRecord> TripRecords { get; set; } 
} 

Нет соединения строк. Могу ли я заставить его каким-то образом?

+0

Я думаю, вы должны удалить папку отладки и перестроить проект. –

+0

Иногда Entity Framework имеет свою строку подключения в контексте. Проверка EF использует ваш файл web.config, а не переменную в его конструкторе. – AdrienTorris

+0

Если вы устанавливаете EF через NuGet, ваша строка подключения по умолчанию должна автоматически добавляться в файл конфигурации. Можете ли вы подключиться к mysite.database.windows.net в visual studio server explorer? –

ответ

2

Измените конструктор этого:

public TrackerContext() : base("Name=DefaultConnection") {} 
+0

Это сработало. Должен ли я сделать этот шаг? Я, хотя это было необязательно. – mathkid91

+0

Это говорит о базовом dbcontext, где abouts для получения строки соединения. Дело в том, что вы можете иметь несколько строк подключения к различным базам данных. –

Смежные вопросы