在数据库的相关表中添加新记录

时间:2013-06-03 09:41:51

标签: c# entity-framework linq-to-sql

我想将新记录添加到相关表中。我有三张桌子: enter image description here

我想在该表中添加新的technical_skill_value。 这是我现在的代码:

        using (var db = new KnowItCvdbEntities())
        {
            var dbSkill = new TECHNICAL_SKILLS_VALUES
            {
                technical_skill_value_id = new Random().Next(),
                skill_name = TextBoxTechSkill.Text,
                skill_type = DropDownListTechSkill.SelectedItem.Text
            };

            //I want to add the new skill to my TECHNICAL_SKILLS_VALUE table. But I really don't get it how to make it.     
            db.SaveChanges();
        }

2 个答案:

答案 0 :(得分:0)

db.SaveChanges();

之前添加以下行
db.TECHNICAL_SKILLS_VALUES.Add(dbSkill);

OR

db.AddToTECHNICAL_SKILLS_VALUES(dbSkill);

答案 1 :(得分:0)

我怀疑您的命名存在问题......例如人们的实体将被命名为Person,实体集将被称为人员。然而,在您的代码中,您创建了一个新的实体集,而不是一个新的实体(根据命名)。

注意复数......你实际创建了一个实体集吗?

我希望有更多的内容:

        TECHNICAL_SKILLS_VALUE dbSkill = new TECHNICAL_SKILLS_VALUE
        {
            technical_skill_value_id = new Random().Next(),
            skill_name = TextBoxTechSkill.Text,
            skill_type = DropDownListTechSkill.SelectedItem.Text
        };

        db.AddToTECHNICAL_SKILLS_VALUES(dbSkill) 
        db.SaveChanges();

尝试:

db.AddToTECHNICAL_SKILLS_VALUES(dbSkill);
db.SaveChanges();

尝试附加对象:

db.TECHNICAL_SKILLS_VALUES.AddObject(dbSkill);
db.SaveChanges();

阅读本文以供参考和示例:clicky link