2011-06-07 46 views
0

NET C#2005年,即時通訊創造了C#中的數據庫中的所有記錄都保存和更新,並在運行時刪除,但每當我關閉該應用程序,我的所有記錄都丟失了,我希望他們要存儲在SQL數據庫中,所以無論何時打開我的應用程序,我都有我保存的記錄,即時嘗試的代碼如下所示。數據庫中添加記錄在C#2005

namespace WindowsApplication13 
{ 
public partial class Form1 : Form 
{ 
    public Form1() 
    { 
     InitializeComponent(); 
    } 

    private void table1BindingNavigatorSaveItem_Click(object sender, EventArgs e) 
    { 
     this.Validate(); 
     this.table1BindingSource.EndEdit(); 
     this.table1TableAdapter.Update(this.database2DataSet.Table1); 

    } 

    private void Form1_Load(object sender, EventArgs e) 
    { 
     // TODO: This line of code loads data into the 'database2DataSet.Table1' table. You can move, or remove it, as needed. 
     this.table1TableAdapter.Fill(this.database2DataSet.Table1); 

    } 
} 

}

+0

到底是什麼問題 – 2011-06-07 07:15:41

+0

實際上哈里斯我想記錄時,我在應用程序的運行時間進入任何記錄永久保存,它被添加和刪除僅在運行時,每當我關閉我的應用我的所有記錄都丟失了,即使我使用保存按鈕,但它不是我的數據庫中保存。我希望他們能夠被保存在數據庫中 – Aliza 2011-06-07 07:17:39

+0

你提供保存按鈕單擊事件處理程序的代碼保存它。 – 2011-06-07 07:27:12

回答

1

我想你想的是如何在數據保存到一個SQL數據庫,並使用C#從中檢索一個基本的瞭解。在這種情況下,谷歌將是你最好的朋友。您可以按照此link作爲起點。它描述瞭如何加載數據保存和使用C#

+0

好的,但我希望我的記錄被保存在s中ql數據庫,爲什麼它不保存呢?事實上,我也有導航欄中的保存按鈕,但它只在應用程序運行時才起作用, – Aliza 2011-06-07 07:22:24

0

,並從數據庫中,我認爲你的table1TableAdapters UpdateCommand屬性爲空。

2

你的代碼看起來約權(沒有測試過),所以也許問題是,你有一個運行時附加的數據庫測試此。你是,如果你的ConnectionString有一個「AttachDbFilename」屬性,而不是「數據庫」或「初始目錄」,像這樣的:

connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\CateringDB.mdf;Integrated Security=True;User Instance=True" 

會發生什麼,然後是每次從Visual Studio編譯程序,數據庫文件複製到輸出目錄(/ bin/debug或/ bin/release),並且對數據庫副本進行任何修改,而不是在解決方案資源管理器中看到的那個。

部署後不會出現此問題,當你不再運行從Visual Studio程序。

您可以更改此行爲有兩種方法:

  • 選擇Solution Explorer中的.mdf文件,然後在屬性(按F4)改變「複製到輸出目錄」設置爲比別的東西「始終複製「。 (我的recomended溶液。)
  • 更改ConnectionString,以指向一個絕對或相對路徑,如 「AttachDbFileName = C:\ catering.mdb」 或 「AttachDbFileName = .... \ Catering.mdb」(從而去除「 | DataDirectory目錄|?」部分
相關問題