나는, 직원과 사람이 개 모델 한 전화에 대한MVC 3/엔티티 프레임 워크 : 바인딩 컬렉션
public class Employee
{
[Key]
public int Id { get; set; }
public int? PersonId { get; set; }
[ForeignKey("PersonId")]
public virtual Person Person { get; set; }
}
public class Person
{
public IList<PhoneNumber> PhoneNumbers { get; set; }
public int Id { get; set; }
public string FName { get; set; }
public string LName { get; set; }
public Person()
{
PhoneNumbers = new List<PhoneNumber>
{
new PhoneNumber()
};
}
}
편집기 템플릿 :
@Html.TextBoxFor(x => x.Number)
@Html.DropDownListFor(m => m, new SelectList(Enum.GetNames(typeof (WebMVC.Core.Common.PhoneType))))
이 혼란을 줄이기 위해, 나는 비 (다른 제거 관련 속성).
내가 겪고있는 어려움은 Employee Create()에서 FName &이라는 사람을 바인딩 할 수 있지만 PhoneNumbers 컬렉션을 바인딩 할 수 없다는 것입니다.
나는 2008 Haack 블로그에 대해 알고 있지만이 상황을 반영한다고 생각하지 않습니다.
사람의 전화 번호 컬렉션을 직원의 Create()에 바인딩하는 해결책을 아는 사람이 있습니까?
만들기보기에서 "바인딩 할 수 없다"는 것은 무엇을 의미합니까? 단순히 전화 번호 속성을 표시하지 않습니까? 저장 작업에는 바인드하지 않고 표시 만합니까? 자세한 내용을 제공하십시오. – StriplingWarrior
전화 번호 클래스와 관련된 속성 이름은 디버깅 (번호, 전화 유형)에 나타나지만 그 값은 null입니다. 게다가, 내가 얼마나 많은 전화 번호를 추가했는지 (새 전화기 추가를 통해) 상관 없다. 콜렉션은 여전히 1이고, 이전에 말했듯이 모든 값은 null이다. – aaa
편집기 뷰 코드에서 어떤 HTML을 생성합니까? 저장 작업에 어떤 매개 변수 이름/값 쌍이 전송됩니까? – StriplingWarrior