0

linq クエリをバインドしたい datagridview があります。

これは私のクラスレベルです:

   private readonly SuburbanPortalEntities _entities;
   private List<PaymentType> _paymentTypes;

これが私の負荷のコードです:

  _paymentTypes = (from pt in _entities.PaymentTypes
            where pt.CorporationId.Equals(_currentcorp.CorporationId)
            select pt).ToList();
  dataGridView_PaymentTypes.DataSource = _paymentTypes;

そして、これは私の挿入であり、この時点では何もしません:

private void button_Insert_Click(object sender, EventArgs e)
{
  var row = new PaymentType();
  row.IsActive = false;
  row.IsAdded = true;
  row.CorporationId = _currentcorp.CorporationId;
  row.TokenId = _token.TokenId;
  row.PaymentTypeId = Guid.NewGuid();
  row.ExcludeCreditCodes = 9;
  _paymentTypes.Add(row);
}

そして私の単純な保存ボタン:

_entities.SaveChanges();

既存のレコードに取り組んでいます。それらに変更を加えると、データベース内のデータが変更されます。新しいレコードでは機能せず、削除方法がわからないため削除できません。

ボタンの代わりにデータグリッドビューが行にレコードを追加できるようにしたいと思います。また、削除では、datagridview が削除を処理できるようにします。

助言がありますか?

4

1 に答える 1

0

新しいデータをSQLサーバーに挿入するには、これを試すことができます:

private void button_Insert_Click(object sender, EventArgs e)
{
  var row = new PaymentType();
  row.IsActive = false;
  row.IsAdded = true;
  row.CorporationId = _currentcorp.CorporationId;
  row.TokenId = _token.TokenId;
  row.PaymentTypeId = Guid.NewGuid();
  row.ExcludeCreditCodes = 9;
  _entities.PaymentTypes.Add(row);  //for linq to sql, you should use InsertOnSubmit()
  _entities.SaveChanges();
}
于 2013-06-29T15:48:29.337 に答える