我写了一个样品与C#但是当我使用相对的ConnectionString它不保存数据到数据库和犯规进行任何异常或错误,甚至:的ConnectionString在LinqToSQL
private void AddButton_Click(object sender, EventArgs e)
{
using (DataBaseModelDataContext DB = new DataBaseModelDataContext(@"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\DataBase.mdf;Integrated Security=True;User Instance=True"))
{
Person person = new Person { Name=NameField.Text,LastName=LastNameField.Text};
DB.Persons.InsertOnSubmit(person);
DB.SubmitChanges();
MessageBox.Show("Add successfully");
}
}
但是,当我更改连接字符串,它的工作原理:
using (DataBaseDataContext DB = new DataBaseDataContext(@"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\Herald\Documents\Visual Studio 2010\Projects\LinqToSql\LinqToSql\DataBase.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True")
,但我需要使用相对连接字符串我应该怎么办:
您确定您正在检查相同的数据库以查看添加记录的位置吗?你的两个连接字符串看起来都是有效的,但要记住两条路径不一样。 –
当您构建解决方案/项目时,您的数据库可能会被覆盖。 – leppie
你是否绝对确信*它不会保存,然后在下次部署时覆盖它?如果您立即*使用具有相同连接字符串的新DataBaseModelDataContext并获取'.Persons',会发生什么? - 它在那里吗? –