직원 및 우선 순위 속성이있는 ToDo 클래스가 있습니다. 사용자가 할일 항목을 업데이트하는 경우, TASKNAME을 변경하고 어쩌면 내가 우선 순위 속성을 업데이트 어떻게 새로운 우선 순위 설정 - 나는 방법 저장 다음 한 내 윈폼 코드에서엔티티 프레임 워크로 중첩 된 속성을 업데이트하는 방법
public class ToDo : BaseEntity
{
public DateTime? DueDate { get; set; }
public String Notes { get; set; }
public virtual Priority Priority { get; set; }
public virtual Staff Staff { get; set; }
public String TaskName { get; set; }
}
을 :
private void Save()
{
var todo = new ToDo
{
ID = ToDoID,
Staff = ddlStaff.SelectedValue,
Priority = ddlPriority.SelectedValue,
TaskName = txtTaskName.Text.Trim(),
Notes = txtNotes.Text.Trim(),
DueDate = String.IsNullOrEmpty(txtDueDate.Text) ? DateTime.Now : DateTime.Parse(txtDueDate.Text.ToString())
};
_todoController.SaveOrUpdate(todo);
은 }
UI에는 직원 및 우선 순위에 대한 드롭 다운/콤보 목록이 있지만 ddlPriority.SelectedValue는 Priority 개체가 아닙니다. I 은 SelectedValue를 전달하는 데이터베이스를 호출하여 Priority 개체를 반환 한 다음 ToDo 개체로 전달할 수 있지만 ToDo 항목과 우선 순위 간의 관계를 만들고 관리하는 것은 미친 것처럼 보입니다.
일반적으로 나는 fk (PriorityID) 접근법을 사용하지만, 모든 예제는 ID보다는 엔티티를 참조하는 것처럼 보입니다. 엔티티에 대해 질의 할 수 있다는 것은 좋은 점입니다. 그러나 ToDo를 업데이트하기위한 데이터베이스로의 왕복은 저에 관한 것입니다. 나는 또 다른 여행이 될 수 있도록 직원 관계를 가지고 있는데, 이것은 단지 2 명의 관계가있는 '단순한'대상입니다. 더 복잡한 사람들은 어떻습니까? –
@ Simon - 대부분의 예제는 예제이기 때문에 참조 방법이 있습니다. 실제 시나리오에는 적합하지 않습니다. 더 복잡한 "객체는 위에서 설명한 PK/FK 접근 방식을 사용합니다. 위의 편집 내용을 다른 방법으로 봅니다. – TheCloudlessSky