【问题标题】:Primary key in datagrid is always zero数据网格中的主键始终为零
【发布时间】:2015-05-30 05:36:40
【问题描述】:

我们正在使用 VS2012 中的实体框架(DB First)开发 WPF 应用程序。我们在数据网格视图中遇到问题。我们从创建绑定到该特定表的数据网格的数据源中拖动数据网格。该表有两列,一列是 transporterID,它是 PK 并且是自动生成的。另一个是运输商名称。问题是当我们运行应用程序时,它在数据网格中显示数据,但主键字段始终为零。它应该是自动递增的。

关于这个的谷歌搜索返回我应该将 StoreGeneratedPattern 设置为 Identity,我这样做了。我还在 xml 编辑器中编辑了我的 edmx 文件,并检查了 StoreGeneratedPattern 是否设置为 Identity。

没有将零更改为自动递增。

【问题讨论】:

  • 如何将数据插入到 datagridView 中?你能写出你的方法代码吗?
  • 我正在使用保存按钮。按钮点击方法如下:rDatabaseEntities rde = new rDatabaseEntities(); private void Button_Click(object sender, RoutedEventArgs e) { rde.SaveChanges(); }

标签: c# wpf entity-framework visual-studio-2012 datagrid


【解决方案1】:

我所做的是,即使 VS 为我自动生成,我也使用自己的上下文。我所做的是我从 window_loaded 事件中删除了自动生成的上下文并将其声明在外部。

See here

【讨论】:

    【解决方案2】:
    private void Button_Click(object sender, RoutedEventArgs e)
        {
            using(rDatabaseEntities rde = new rDatabaseEntities())
            {
                rde.TransporterId = dataGridView.rows.count-1;
                rde.SaveChanges();
            }
        }
    

    您可以手动尝试设置transportId。

    【讨论】:

      猜你喜欢
      • 2016-02-23
      • 2021-10-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-02
      • 2016-06-07
      • 1970-01-01
      相关资源
      最近更新 更多