代码之家  ›  专栏  ›  技术社区  ›  Dia Sheikh

EF在元数据文件中将bigint列转换为int32

  •  0
  • Dia Sheikh  · 技术社区  · 6 年前

    某样东西 比基特 类型的属性 在元数据文件中,模型生成的分部类的数据类型为 长的 同一领域。当我尝试从中加载数据时,这会产生冲突 . 运行时引发以下异常。。。

    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: 
    

    我无法修改元数据文件以更正数据类型。为什么会产生这种冲突?有什么解决办法吗?

    1 回复  |  直到 6 年前
        1
  •  0
  •   Dia Sheikh    6 年前

    原来不是EF而是DB的人把主键的数据类型从 比基特

    很沮丧,我把整个ADO.NETEF数据模型文件夹,我已经创建,然后重新创建相同的从头开始。它解决了这个问题。

    我认为EF应该在更新.edmx文件时更新元数据文件,或者它应该允许程序员更改它。