2010-08-11 102 views
1

可以說我有一個數據庫在c:\ database.mdf 使用context.DatabaseExists(「c:\ database.mdf」) 或只是簡單地使用File.exists( 「c:\ database.mdf」)?Linq to Sql數據庫上存在

我問這個,因爲我得到了奇怪的行爲形式DatabaseExists方法: 它告訴我,有時是c:\ database.mdf存在,但它不存在,因爲我 手動刪除Windows資源管理器的文件。

我失蹤了什麼?

回答

1

DatabaseExists實際上試圖打開到數據庫的連接。這意味着它必須是一個有效的數據庫。

FileExists僅檢查具有該名稱的文件是否存在,而不是該文件是否有效。

您可以創建一個.txt文件並將其重命名爲database.mdf。 FileExists將返回true,而DatabaseExists將返回false。

+0

好吧,我明白,但在我的情況下,我手動刪除我的文件 和CreateDatabase方法拋出一個異常,說數據庫名稱已經存在。 – 2010-08-11 01:26:17

+0

是否可以將其從項目中刪除而不是刪除它? – jwsample 2010-08-11 01:39:40