5

我正在尝试将 WPF 的 DataGrid 绑定到 MS SQL 数据库中的表。

1)首先我创建了一个App.config文件如下rrr

    <connectionStrings> 
      <add name="ConString" connectionString="Data Source=MYDataSB\SQLExpress; 
       User Id=sa;Password=gm03C3; Initial Catalog=MYDB;">
    <connectionStrings/>

2)其次,我在表单中添加了一个名为 grdEventLog 的数据网格

      <Grid>
        <DataGrid Name="grdEventLog"/>
      </Grid>

3)然后我将此代码添加到 MainWindow.xaml.cs 文件中,如下所示:

     using System.Data;
     using System.Data.SqlClient;
     using System.Web;

public partial class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();
        FillDataGrid();
    }

    private void FillDataGrid()
    {
        string ConString = ConfigurationManager.ConnectionStrings["ConString"].ConnectionString;
        string CmdString = string.Empty;
        using (SqlConnection con = new SqlConnection(ConString))
        {
            CmdString = "SELECT Server,Date,Typ,Msg FROM EventLog";
            SqlCommand cmd = new SqlCommand(CmdString, con);
            SqlDataAdapter sda = new SqlDataAdapter(cmd);
            DataTable dt = new DataTable("EventLog");
            sda.Fill(dt);
            grdEventLog.ItemsSource = dt.DefaultView;
        }
    }

输入所有这些条目后,我在 ConfigurationManager 处出现错误,指出“当前上下文中不存在该名称”

我正在尝试添加参考 cfgmgr32.dll 来克服此错误。但它不被接受。谁能建议克服这个错误?!

也欢迎在 WPF 中处理数据绑定的替代建议。

4

1 回答 1

1

问题不在于数据绑定本身。似乎,配置文件中或 ConnectionStrings [] 中使用的键中有错字。如果您在此处使用堆栈跟踪发布整个错误,这将很有用。PS 您的配置文件中有错字。应该不是

<connectionStrings> 
      <add name="ConString" connectionString="Data Source=MYDataSB\SQLExpress; 
       User Id=sa;Password=gm03C3; Initial Catalog=MYDB;">
    <connectionStrings/>

<connectionStrings> 
      <add name="ConString" connectionString="Data Source=MYDataSB\SQLExpress; 
       User Id=sa;Password=gm03C3; Initial Catalog=MYDB;">
    </connectionStrings>

见最后一行。

于 2012-12-03T14:53:56.500 回答