Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在我的创建控制器的两个不同表中添加值_C#_Sql Server_Asp.net Mvc - Fatal编程技术网

C# 在我的创建控制器的两个不同表中添加值

C# 在我的创建控制器的两个不同表中添加值,c#,sql-server,asp.net-mvc,C#,Sql Server,Asp.net Mvc,我有一个Create控制器,它使用db.Add,dbSaveChanges()在一个表[Kursus_kursist]中创建一条记录。 我需要根据其中一个值(kursus_kursist_id,是一个int)在另一个表[jobcoach]中创建一个记录,但我不知道如何传递该值 public ActionResult Create([Bind(Include = "kursus_kursist_id,kursist_id,status, jc")] kursus_kursist kursu

我有一个Create控制器,它使用db.Add,dbSaveChanges()在一个表[Kursus_kursist]中创建一条记录。 我需要根据其中一个值(kursus_kursist_id,是一个int)在另一个表[jobcoach]中创建一个记录,但我不知道如何传递该值

    public ActionResult Create([Bind(Include = "kursus_kursist_id,kursist_id,status, jc")] kursus_kursist kursus_kursist)
    {
        if (ModelState.IsValid)
        {
            db.kursus_kursist.Add(kursus_kursist);
            db.SaveChanges();
            db.jobcoach.Add(/*I THINK THE KURSUS_KURSIST_ID NEEDS TO GO HERE*/);
            db.SaveChanges();

            return RedirectToAction("../kursister/Index");
        }

我已经能够在usus_kursist和jobcoach表中创建一个记录,但是在jobcoach表中,我没有得到kursus_kursist id-因此基本上是一个空记录(除了PK)。

当您添加到数据库并保存时,该实体会被跟踪。被跟踪的实体具有指定的Id

var myEntity = new SomeEntity(){
   Name="Test",
   CreatedDate = DateTime.UtcNow
}

dbContext.MyEntities.Add(myEntity);
dbContext.SaveChanges();

Console.WriteLine(myEntity.Id);
这将为您提供实体分配的正确Id。 如果JobCoach已连接,则还可以将其添加到现有关系中

var myEntity = new SomeEntity(){
       Name="Test",
       CreatedDate = DateTime.UtcNow,
       MyChildObject = new ChildObject(){
           Name="Something else",
           CreatedDate = DateTime.UtcNow
    }

    dbContext.MyEntities.Add(myEntity);
    dbContext.SaveChanges();        

    Console.WriteLine(myEntity.MyChildObject.Id);
因此,在您的情况下,您应该能够在保存该实体后使用第一个kursist_thingie.Id。分配JobCoach.KursistId=kursist_thingie.Id或您喜欢的方式

希望有帮助