Entity Framework 4 的錯誤訊息排除
每次在做 source code review 時,總是會遇到有的沒有的問題。
記錄下來,下次也許還會用得到!
Q1、基礎提供者在 Open 失敗
A:很單純地是 Connection String 指定錯誤,將 Entity Class 的 初始化字串修正後就可以了!
Q2、無法更新 EntitySet 'RayTest',因為它有 DefiningQuery,但是在 <ModificationFunctionMapping> 項目中沒有 <InsertFunction> 項目來支援目前的作業。
A:這是因為 Table 沒有 PK 的關係,所以 EF 就認定這是唯讀的 Table ,在 EDMX 的 Model 中的 Table 的欄位,加上 pk 後就正常了
Q3、更新實體時發生錯誤。
詳細資訊請參閱內部例外狀況。將 datetime2 資料類型轉換成 datetime 資料類型時,產生超出範圍的值。
開啟 IntelliTrace 後看到進一步的資訊。
A:
這是因為 DB 該欄位有 Default Value 而且又不允許 null
在寫入資料時又沒有指定 初始化的值所造成的!
在 model 中指定初始化的值就可以了!
供參考…