-1

テーブル2のレコードがテーブル1に追加され、そのレコードがテーブル2で削除されるボタンをクリックすると、2つのテーブルがあり、ボタンコントロールがあります。のように書きました

public ActionResult Accept( int id, string selectedVal)                         //To update Accept status
        {
            var retrieveID = (from i in dbContext.groups
                              where i.groups_name == selectedVal
                              select new { groups_id = i.Usr_contacts_groups_id }).FirstOrDefault();

          var currentId = 1;
            var deleteQuery = dbContext.requests.Where(i => i.from_usr_id == id && i.to_usr_id == id).FirstOrDefault();

            contact contactGroup = new contact();

            contactGroup.groups_id = retrieveID.groups_id;
            contactGroup.groups_usr_id = currentId;



            this.dbContext.Add(contactGroup);
            this.dbContext.Delete(deleteQuery);
            try
            {
                this.dbContext.SaveChanges();

            }
            catch
            {
                return View();
            }
            return Json(null);
        }

table1にレコードを追加し、削除クエリで「id」値を使用してtable2の複数のレコードを削除できます。

4

1 に答える 1

0

table2 のそのレコードは table1 に追加され、そのレコードは table2 で削除する必要があります

平易な英語で次のように仮定します。

そのレコードをtable2追加しtable1てから削除する必要がありますtable2

つまり、レコードを からtable1に移動しtable2ますよね?(そうだと仮定しましょう)

public ActionResult MoveRecord(int id) {

    // get Table 2 record
    var recordA = dbContext.table2.FirstOrDefault(x => x.bioId == id);

    // if we did find a record
    if (recordA != null) {

        // let's add it into Table 1
        var recordB = new Table2();
        recordB.id = recordA.id;
        recordB.value = recordA.value;

        // add to database
        dbContext.table1.AddObject(recordB);

        // now that we have it in the database, let's delete the original on
        dbContext.table2.DeleteObject(recordA);

        // save all changes
        dbContext.SaveChanges();
    }


    return RedirectToAction("Index");
}
于 2012-08-28T12:12:40.307 に答える