従業員を追加すると、会社のデータを尋ね、次の従業員を追加すると、会社のデータが再入力され、重複レコードが生成されます。 2人の従業員が同じ会社に所属している場合、私は会社の再登録をしないように私の検証となるべきですか?エラーASPNET COREの挿入に関する重複情報
public class Company
{
[Key]
public int Id { get; set; }
[Required]
[MaxLength(45)]
public string Code { get; set; }
[Required]
public string Name { get; set; }
public string BussinesName { get; set; }
public string WebAddress { get; set; }
public virtual ICollection<Employee> Employees { get; set; }
}
public class Employee
{
[Key]
public int Id { get; set; }
public int EmployeeNumber { get; set; }
[Required]
public Company Company { get; set; }
[Required]
public bool Active { get; set; }
}
POSTのCONTROLLER
[HttpPost]
public IActionResult Post([FromBody]Employee data)
{
//Validamos
if(ModelState.IsValid){
//Agregamos registro
_context.Employee.Add(data);
return Ok(_context.SaveChanges());
}
return BadRequest(ModelState);
}
企業データの欠落に対する応答は次のとおりです。
{
"Person": [
"The Person field is required."
],
"Company.Code": [
"The Code field is required."
],
"Company.Name": [
"The Name field is required."
]
}
会社情報
{
"Person": {
"lastNamePat": "Juan",
"lastNameMat": null,
"firstName": "Lopez"
},
"Company" :{
"Code": "XXX",
"Name": "test"
}
}
重複しない情報の妥当性を検証する方法を教えてください。
あなたは 'Employee'と' Company'エンティティ間の外部キーを持っているように見えません。 – Cameron
http://www.entityframeworktutorial.net/code-first/configure-one-to-many-relationship-in-code-first.aspx –