当使用简单的crud操作时,数据不显示反射

时间:2013-06-26 10:56:48

标签: c# wpf visual-studio-2010 sql-server-2008-r2

我是自学,我是非常新的WPF。我试图记住如何使用SQL Server 2000 R2 Management Studio与C#,我有一段时间没有使用过,我也是数据目录的新手。这次请忽略SQL注入,因为我正在处理样本。

问题

当应用程序停止并重新运行时,数据不显示反射,无论是创建,删除还是更新。前端和后端都有。我想知道它是否与Data Source=.\SQLEXPRESS有关。如果是,那么请有人帮助我,但据我所知here,它会有什么不同吗?

以下是连接字符串的代码...

  SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\MyDatabase.mdf;Integrated Security=True;User       Instance=True");

    public MainWindow()
    {
        InitializeComponent();
    }

绑定方法

public void BindMyData()
    {
        try
        {
            conn.Open();
            SqlCommand comm = new SqlCommand("SELECT * FROM Student", conn);
            DataSet ds = new DataSet();
            SqlDataAdapter da = new SqlDataAdapter(comm);
            da.Fill(ds);
            myDataGrid.ItemsSource = ds.Tables[0].DefaultView;
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message.ToString());
        }
        finally
        {
            conn.Close();
        }
    }

    private void Window_Loaded(object sender, RoutedEventArgs e)
    {
        BindMyData();
    }

插入方法的代码

    private void btnInsert_Click(object sender, RoutedEventArgs e)
    {
        try
        {
            conn.Open();
            SqlCommand comm = new SqlCommand("INSERT INTO Student VALUES(" + txtStudId.Text + ",'" + txtStudName.Text + "'," + txtStudResult.Text + ")", conn);
            comm.ExecuteNonQuery();
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message.ToString());
        }
        finally
        {
            conn.Close();
            BindMyData();
        }
    }

...的App.config

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
   <connectionStrings>
      <add name="WPFAllDatabaseOperationApplication.Properties.Settings.MyDatabaseConnectionString"
        connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\MyDatabase.mdf;Integrated Security=True;User Instance=True"
        providerName="System.Data.SqlClient" />
   </connectionStrings>
</configuration>

我在电脑上学习。当我在MSSMS中查看对象资源管理器时,我可以看到以下详细信息(不是实际描述,而是假设它)......

(local)(SQL Server 11.60.1700 - Person-PC\Person)

当我转到SQL Server配置管理器&gt;我可以看到MSSQLSERVERSQLEXPRESS。当我安装MSSMS时,我将默认实例保留为MSSQLSERVER。所以在app.config和连接字符串中我将./SQLEXPRESS替换为./MSSQLSERVER并得到错误...

  

(提供者:SQL网络接口,错误:25 - 连接字符串无效)。

所以,如果有人可以帮助我,请提前感谢。

0 个答案:

没有答案