【问题标题】:linq to entities链接到实体
【发布时间】:2012-08-08 20:07:16
【问题描述】:

我有两个三个名为
Language,Language Type,Employee

的表

语言类型字段为LId,LanguageType

语言领域是LId,EmpId,Language Fluency

Employee 的字段是 EmpId ,EmpName

Language Type 和语言之间的关系是one-to-one,language 和 Employee 表是ma​​ny-to-one。问题是当我用语言输入数据时,它会显示错误

A dependent property in a Referential Constraint is mapped 
to a store-generated column. Column: 'LId'."}.

即使数据被插入到语言类型而不是语言表中。 lINQ 查询是语言表是

public void AddEmpLanguage(Language language, long id)   
{ 
   using (var context = new HRMSEntities())
  {
       Language emp = new Language
       {
            EmpId = id,
            LanguageFluency = language.LanguageFluency,
        };
       context.Language.AddObject(emp);
   }
}

【问题讨论】:

  • 这里不是很清楚,实际问题是什么?

标签: entity-framework


【解决方案1】:

您可以尝试将语言直接添加到员工对象

public void AddEmpLanguage(Language language, long empId)   
{ 
    using (var context = new HRMSEntities())
    {
        Language lang = new Language
        {
            LanguageFluency = language.LanguageFluency,
        };
        var employee = context.Employees.Find(empId);
        /*          or context.Employees.FirstOrDefault(x=>x.ID == empId); */
        if(employee != null){
            employee.Languages.Add(lang);
        }
        context.SaveChanges();
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-07-17
    • 2017-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-11
    • 2015-08-15
    相关资源
    最近更新 更多