The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

改用 SqlMetal.exe 建立 LINQ to SQL 的 DBML 檔

我們通常在寫 LINQ to SQL 專案時,都會利用 Visual Studio 2008 內建的 LINQ to SQL DBML Designer 讓我們透過視覺化的介面將資料庫表格、檢視表或預儲程序從 Server Explorer 拖曳到設計視窗中,不過缺點就是當資料庫結構(DB Schema)改變了之後就需要跟著修正,我通常有以下選擇:

... 繼續閱讀 ...

.NET 3.5 Enhancements Training Kit RTM

之前在 Visual Studio 2008 推出的時候,同時也推出了一套 Visual Studio 2008 and .NET Framework 3.5 Training Kit 訓練教材,可供開發人員下載自我學習。而隨著這次 Visual Studio 2008 Service Pack 1.Net Framework 3.5 Service Pack 1 的推出,也同時推出了 .NET 3.5 Enhancements Training Kit 訓練教材,其中包含了許多新增的範例程式、簡報、實驗演練(Labs)教材等,想學習新技術的人不用在等了,趕快下載回去自修吧。

... 繼續閱讀 ...

如何強迫 .Net 應用程式輸出英文的例外訊息

因為常常需要跟國外 Blogger 交流,甚至回報某些國外 .Net 產品的 Bug 給他們,所以常常都要自行翻譯「例外訊息」( Exception Message ),不過有時後真的會翻錯。再者,若在開發 .Net 時遇到一些很少見的問題,用中文搜尋不到時,可能會想將訊息翻成英文後再搜尋一次,不過也有可能因為翻譯錯誤導致搜尋結果不夠精準。所以若能夠在除錯的時候輸出英文版的例外訊息,那該有多好阿!

... 繼續閱讀 ...

解決【由於該物件目前的狀態,導致作業無效。】問題

如果你用 LINQ to SQL 開發系統的話,若兩個關連的表格需要更新資料,但需要更新的資料是 Foreign Key 的值的話,就有些地方需要特別注意,由於透過 LINQ to SQL 讀取或寫入資料都是透過 ORM ( Object-relational mapping ) 的方式儲存,讓原本在資料庫中的資料改以物件的方式表達,因此對這種包含關連的物件,就不能像用 T-SQL 的方式一樣改變關連的鍵值。

... 繼續閱讀 ...