EF 在元数据文件中将 bigint 列转换为 int32
EF turned bigint column to int32 in metadata file
对于我数据库中的 table SomeTable,EF 将 bigint 类型的主键转换为 属性 元数据文件中的 int32 类型,而其等效的模型生成的部分 class 具有相同字段的 long 数据类型.当我尝试从 SomeTable 加载数据时,这会产生冲突。以下异常在运行时抛出...
System.MissingMethodException was unhandled by user code
HResult=-2146233069
Message=Method not found: 'Int32 RMSDataLibrary.SomeTable.get_ID()'.
Source=GUI_Forms
StackTrace:
at GUI_Forms.DataRetrieval.populateData()
at GUI_Forms.DataRetrieval.DataRetrieval_Load(Object sender, EventArgs e) in E:\RMS\C#\RMS-ESS\GUI_Forms\DataRetrieval.cs:line 25
at System.Windows.Forms.Form.OnLoad(EventArgs e)
at System.Windows.Forms.Form.OnCreateControl()
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.SetVisibleCore(Boolean value)
InnerException:
我无法修改元数据文件来更正数据类型。为什么可能会产生这种冲突?请问有什么解决办法吗?
事实证明,不是 EF 而是我们的数据库人员将主键的数据类型从 int 更改为 bigint :) 但是以某种方式从我的 .edmx 中删除 table 然后更新模型不会对元数据文件带来任何更改(EF 错误???)甚至删除 .edmx 的所有内容和更新也没有任何效果。
非常沮丧,我删除了我创建的整个 ADO.NET EF 数据模型文件夹,然后从头开始重新创建相同的文件夹。它解决了问题。
我认为 EF 应该在更新 .edmx 文件时更新元数据文件,或者它应该允许程序员更改它。
对于我数据库中的 table SomeTable,EF 将 bigint 类型的主键转换为 属性 元数据文件中的 int32 类型,而其等效的模型生成的部分 class 具有相同字段的 long 数据类型.当我尝试从 SomeTable 加载数据时,这会产生冲突。以下异常在运行时抛出...
System.MissingMethodException was unhandled by user code
HResult=-2146233069
Message=Method not found: 'Int32 RMSDataLibrary.SomeTable.get_ID()'.
Source=GUI_Forms
StackTrace:
at GUI_Forms.DataRetrieval.populateData()
at GUI_Forms.DataRetrieval.DataRetrieval_Load(Object sender, EventArgs e) in E:\RMS\C#\RMS-ESS\GUI_Forms\DataRetrieval.cs:line 25
at System.Windows.Forms.Form.OnLoad(EventArgs e)
at System.Windows.Forms.Form.OnCreateControl()
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.SetVisibleCore(Boolean value)
InnerException:
我无法修改元数据文件来更正数据类型。为什么可能会产生这种冲突?请问有什么解决办法吗?
事实证明,不是 EF 而是我们的数据库人员将主键的数据类型从 int 更改为 bigint :) 但是以某种方式从我的 .edmx 中删除 table 然后更新模型不会对元数据文件带来任何更改(EF 错误???)甚至删除 .edmx 的所有内容和更新也没有任何效果。
非常沮丧,我删除了我创建的整个 ADO.NET EF 数据模型文件夹,然后从头开始重新创建相同的文件夹。它解决了问题。
我认为 EF 应该在更新 .edmx 文件时更新元数据文件,或者它应该允许程序员更改它。