我遷移我公司的aplication到ASP NET MVC和Entity Framework持久性(即現今在SQL Server和Oracle運行)。實體框架 - 映射十進制(13,0)的問題
創建一個基於SQL Server數據庫Ë我實體模型分別創建爲Oracle SSDL(對於Oracle我用DevArt dotConnect爲甲骨文提供者),我得到一些痛苦的煩惱。
我的表主鍵在SQL Server上是十進制類型(13,0),在Oracle上是數字(13,0),但是Oracle映射到Int64和SQL Server類型爲十進制,但我需要SQL Server將其映射到Int64。
我這些修改手動進行的實體數據模型和創建記錄它工作正常,但是當我不得不刪除或更新一些記錄我這些錯誤:
指定的值不是類型的實例「 Edm.Decimal」 參數名:價值
at System.Data.Common.CommandTrees.DbConstantExpression..ctor(DbCommandTree commandTree, Object value, TypeUsage constantType)
at System.Data.Mapping.Update.Internal.UpdateCompiler.GenerateValueExpression(DbCommandTree commandTree, EdmProperty property, PropagatorResult value)
at System.Data.Mapping.Update.Internal.UpdateCompiler.GenerateEqualityExpression(DbModificationCommandTree commandTree, EdmProperty property, PropagatorResult value)
at System.Data.Mapping.Update.Internal.UpdateCompiler.BuildPredicate(DbModificationCommandTree commandTree, PropagatorResult referenceRow, PropagatorResult current, TableChangeProcessor processor, Boolean& rowMustBeTouched)
at System.Data.Mapping.Update.Internal.UpdateCompiler.BuildDeleteCommand(PropagatorResult oldRow, TableChangeProcessor processor)
at System.Data.Mapping.Update.Internal.TableChangeProcessor.CompileCommands(ChangeNode changeNode, UpdateCompiler compiler)
有人能幫助我嗎?
爲什麼實體框架的映射是如此固定的嗎?它可以更靈活?
詩:我得到了錯誤,我懷疑是因爲關聯。
我有一個實體命名爲省,另一個名爲國家,我認爲這些實體之間的關聯是造成在更新的問題,並刪除。
問候,
道格拉斯·阿吉亞爾