0

既存のデータベースを使用して EF Code First Approach に取り組んでいます。シナリオは次のとおりです。

  1. データを挿入するたびに、カスタマイズされた主キーを生成して DB テーブルに挿入する必要があります。

  2. 同様に、削除の場合、削除操作を実行するべきではありません。Deleted フィールドを 1 に変更するだけでなく、ModificationDate、Time などの他のフィールドにデータを挿入する必要があります。

  3. その中でストアドプロシージャを使用する必要があるかどうかも教えてください。

注: 主キー列は非シード varchar 列です。

public class Child {
    [Key]
    public string ChildCounter { get; set; }
    public string CouncilCode { get; set; }
    public string CentreCode { get; set; }
    public string DateBirth { get; set; }
    public string GivenNames { get; set; }
    public string FamilyName { get; set; }
    public string FatherCounter { get; set; }

    public virtual Father Father { get; set; }
}

私はEFを初めて使用するので、コード例は高く評価されるべきです。

  public ActionResult Create() {
        return View();
    }

    //
    // POST: /Child/Create

    [HttpPost]
    [ValidateAntiForgeryToken]
    public ActionResult Create(tblChild tblchild) {
        if (ModelState.IsValid) {
            db.tblChilds.Add(tblchild);
            db.SaveChanges();
            return RedirectToAction("Index");
        }

        return View(tblchild);
    }


    public ActionResult Delete(string id = null) {
        tblChild tblchild = db.tblChilds.Find(id);
        if (tblchild == null)
            return HttpNotFound();
        return View(tblchild);
    }

    //
    // POST: /Child/Delete/5

    [HttpPost, ActionName("Delete")]
    [ValidateAntiForgeryToken]
    public ActionResult DeleteConfirmed(string id) {
        tblChild tblchild = db.tblChilds.Find(id);
        db.tblChilds.Remove(tblchild);
        db.SaveChanges();
        return RedirectToAction("Index");
    }
4

1 に答える 1