Привет, У меня есть несколько проектов в решении. В проекте A у меня есть app.config со строкой соединения Ver3ConnectionString. Но когда я отлаживаю, строка подключения не найдена в коде :). В то время как отладка строк подключения содержит ту, которая не определена в этом app.config, в моем приложении :). Я использую VS2013 Express :).app.config: Значение ConnectionString не отображается в проекте, где оно определено
Кроме того, applicationSettings - это те, которые определены в основном проекте :), но не тот, который подгружается.
Magic :).
ДОБАВЛЕНО:
Решение было создано моим коллегой из существующего проекта, так Im ищет ошибки в файлах решения/проекта.
Класс MobileWalletContext связан с EntityFramework 6.X. Может быть, это проблема?
Добавлено 2: Эта неизвестная строка подключения имеет имя = "LocalSqlServer". Может быть, это будет полезно?
App.config:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</configSections>
<connectionStrings>
<add name="Ver3ConnectionString"
connectionString="Data Source=PAZI-PRO2\SQLEXPRESS;Initial Catalog=MobileWalletVer3;Integrated Security=True"
providerName="System.Data.SqlClient" />
</connectionStrings>
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
<parameters>
<parameter value="mssqllocaldb" />
</parameters>
</defaultConnectionFactory>
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
</providers>
</entityFramework>
</configuration>
C# код, где connsterionString называется:
public MobileWalletContext() : base(string.Format("name={0}",ConfigurationManager.ConnectionStrings["Ver3ConnectionString"].ConnectionString))
{
Database.SetInitializer(new DropCreateDatabaseIfModelChanges<MobileWalletContext>());
}
Я понимаю изменение, но я хочу полностью его раскрыть :). –
Отредактировал мой ответ, чтобы добавить некоторые детали. –
Я изменил вызов базового конструктора: base («name = XXX»), где XXX - это имя строки подключения, но у меня есть ошибка: в приложении не может быть найдена строка с именем «XXX» файл конфигурации. Magic again :) –