问题与创建对象SQL连接异常

问题描述 投票:0回答:2

我在Visual Studio 2013中创建一个SQL Server数据库。

我有一个问题,当我试图创建一个新的SqlConnection对象。同样的代码昨天工作,但现在我有一些问题。我还添加了SQLException但我不能达到这个代码

try
{
    string connectionString = ConfigurationManager.ConnectionStrings["MyKey"].ConnectionString;

    SqlConnection sqlConnection = new SqlConnection(connectionString);
    sqlConnection.Open();
}
catch (System.Data.SqlClient.SqlException sqlException)
{
    System.Windows.Forms.MessageBox.Show(sqlException.Message);
}

Application.Run(new LoginForm());

SqlConnection没有工作。这是个例外。我不知道这是错误的,因为它没有前工作

System.TypeInitializationException了未处理 的HResult = -2146233036 消息=关于“System.Data.SqlClient.SqlConnection”的类型初始引发了异常。 来源= System.Data 类型名= System.Data.SqlClient.SqlConnection

堆栈跟踪:

在System.Data.SqlClient.SqlConnection..ctor(字符串的connectionString)

的InnerException信息:System.InvalidOperationException 的HResult = -2146233079 消息=无法读取飞地提供商的配置部分。确保该部分正确格式化您的应用程序配置文件。

错误消息:配置系统初始化失败 来源= System.Data

堆栈跟踪:

在System.Data.SqlClient.SqlConnection..cctor()

的InnerException:System.Configuration.ConfigurationErrorsException 的HResult = -2146232062 消息=配置系统初始化失败 来源= System.Configuration BareMessage =配置系统初始化失败 行= 0

的InnerException:System.Configuration.ConfigurationErrorsException 的HResult = -2146232062 消息=缺少根元素。来源= System.Configuration BareMessage =缺少根元素。

行= 0

的InnerException信息:System.Xml.XmlException 的HResult = -2146232000 消息=缺少根元素。 来源=的System.Xml

的app.config

    <?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
      <section name="MercazApp.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
    </sectionGroup>
  </configSections>
  <connectionStrings>
    <add name="MyKey"
         connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=D:\Taekwon-Do\MercazApp\DB\LoginDb.mdf;Integrated Security=True;"
         providerName="System.Data.SqlClient"/>
  </connectionStrings>
  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
  </startup>
  <userSettings>
    <MercazApp.Properties.Settings>
      <setting name="username" serializeAs="String">
        <value />
      </setting>
      <setting name="password" serializeAs="String">
        <value />
      </setting>
      <setting name="name" serializeAs="String">
        <value />
      </setting>
    </MercazApp.Properties.Settings>
  </userSettings>
</configuration>
c# sql-server
2个回答
2
投票

缺少根元素。 (C:\用户\来自Alexs \应用程序数据\本地\ MercazApp \ MercazApp.exe_Url_ka1yz14eyfxx0cttxywliv5ag3ke50uk \ 1.0.0.0 \ user.config)

似乎有关。可能的是,该文件变为坏事。检查它。

我不能相信你!我重命名的文件夹,老建筑也再次创造了,现在它的工作原理后!我花了4小时这一点。你在哪里看到的错误,为什么它造成的呢?

我只是在完整地阅读例外。例外包含了大量的信息。这是值得获取的习惯,充分阅读,理解和解释。


0
投票

尝试直接把连接串入代码的地方,说行的:

string connectionString = ConfigurationManager.ConnectionStrings["MyKey"].ConnectionString;

这会告诉你它是否是一个web.config问题。由于它开始玩了一下子,它很可能是在IIS中配置一些变化触发web配置进行更新。

还值得一检查whther有不同的文件夹(包括app_data文件),如果你找到一个没有内容,只需要删除它的任何其他.config文件。

© www.soinside.com 2019 - 2024. All rights reserved.