我是自学,我是非常新的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;我可以看到MSSQLSERVER
和SQLEXPRESS
。当我安装MSSMS
时,我将默认实例保留为MSSQLSERVER
。所以在app.config和连接字符串中我将./SQLEXPRESS
替换为./MSSQLSERVER
并得到错误...
(提供者:SQL网络接口,错误:25 - 连接字符串无效)。
所以,如果有人可以帮助我,请提前感谢。