Кажется, что Code First DbContext действительно использует данную ConnectionString во время компиляции? Я даже не знаю, как это возможно, но мне кажется, что это так. Если я отключаю свой локальный SQL Server, я получаю сообщение об ошибке «Не удалось получить MetadataWorkspace для типа DbContext ...». При включении SQL Server все компилируется нормально.
Вот часть моего контекста (я использую существующую базу данных и да, я знаю, на самом деле не код сначала)
public class MyContext : DbContext
{
public MyContext() : base("MY_DYNAMIC_CONNECTIONSTRING")
{
Database.SetInitializer<MyContext>(null);
}
...
Если это действительно так, то возникает огромная проблема. Как я могу предотвратить это? Что если я использую отдельные машины сборки, где ConnectionString не работает? Или я что-то не так делаю? Любой совет?