Итак, вчера я установил PHP и MySQL на свою машину разработки. С тех пор я получаю следующую ошибку при попытке запустить один из моих проектов .NET:Имя соединения «LocalSqlServer» не было найдено в конфигурации приложений или строка соединения пуста
Имя соединения «LocalSqlServer» не было найдено в конфигурации приложений или строка подключения пуста.
Он ссылается на эту строку Machine.config:
<add name="AspNetSqlRoleProvider" connectionStringName="LocalSqlServer" applicationName="/" type="System.Web.Security.SqlRoleProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
Я искал в Интернете, высокий и низкий, и может подтвердить, что мой machine.config имеет необходимые строки соединения:
<connectionStrings>
<add name="LocalSqlServer" connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true" providerName="System.Data.SqlClient" />
<add name="LocalMySqlServer" connectionString="" />
Интересно, что я выполнил ту же самую операцию по установке PHP и MySQL на моем рабочем сервере (сервер 2008), и там нет проблем. Моя машина для разработчиков - Windows 7.
Вся моя машина для разработчиков повреждена из-за этого. Как я могу восстановить файл machine.config или исправить его и решить эту проблему? Кто-нибудь испытал это раньше?
Nugs
Итак, по какой-то странной причине. Полностью несвязанный файл web.config имел: connectionStrings> –
Nugs
Удаление этого, казалось, делало трюк. Я понятия не имел, что файл web.config, который даже в проекте, который я запускаю, не может повлиять на другие проекты? – Nugs
@Нуги, посмотрите следующую статью MSDN по иерархии и наследованию конфигурации ASP.NET, чтобы понять, почему ваш проект унаследовал эти параметры: http://msdn.microsoft.com/en-us/library/ms178685.aspx – Joe