У меня также была такая ошибка, если имя экземпляра SQL Server не указано и на хосте SQL установлено несколько экземпляров SQL. Вот пара примеров, чтобы уточнить:
Строка подключения, приведенная ниже, приводит к исключению «Ошибка основного поставщика при открытии» без внутреннего исключения в приложении .NET WebForms:
connectionString="metadata=res://*/Entities.csdl|res://*/Entities.ssdl|res://*/Entities.msl;provider=System.Data.SqlClient;provider connection string="Data Source=localhost;Initial Catalog=Entities;User ID=user;Password=password;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient"
Следующая строка подключения выполняется, как и ожидалось, в приложении .net WebForms, где среда SQL имеет несколько экземпляров. Редко я знаю, но у меня есть несколько разных экземпляров SQL на моем компьютере разработчика для разных проектов:
connectionString="metadata=res://*/Entities.csdl|res://*/Entities.ssdl|res://*/Entities.msl;provider=System.Data.SqlClient;provider connection string="Data Source=localhost\SQLSERVER2014;Initial Catalog=Entities;User ID=user;Password=password;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient"