2011-03-11 8 views
0

여기에 훌륭한 정보를 기반으로합니다 ... 내 편집 권한이 있고 VM을 훌륭하게 만들 수 있습니다. 내 VM에는 "SelectList"컬렉션과 DD 모양이 포함되어 있습니다.MVC3 세부 정보 작업 외래 키 이름 필드

@Html.DropDownListFor(model => model.softwaremanufacturerid, Model.ListOfManufacturers) 

제 질문은 세부 정보 작업과 관련이 있습니다. FK 대신 Manufacturers 이름을 표시하기 위해 이미 작성한 목록 (모든 구체적인 것들이 상속하는 조상 VM 클래스에있는 목록)을 사용할 수있는 방법이 있습니까? 내가 얻는 것은 단지 FK입니다.

감사합니다.

답변

1

목록 값은 절대로 게시되지 않습니다. 선택한 값만. 따라서이 양식을 제출할 해당 작업에서 동일한보기를 다시 표시해야하는 경우이 값을 사용하여 데이터베이스에서 목록을 반품 할 수 있습니다.

+0

나는 분명하지 않다고 생각합니다. 세부 동작에 대해 이야기하고 있으므로 목록 (색인) 항목에서 항목을 선택 했으므로 이제 세부 정보보기가 표시됩니다. 나는 FK 값을 받아서 FK 이름을 표시하기를 바랬다. 이미 내 "SelectList"컬렉션이 내보기에 있습니다 ... 나는이 목록에서 FK를 기반으로 표시 이름을 잡기 위해 HTML 도우미가 필요했습니다. – Bayrat

0

이 뭔가를 할 수 있습니다

public class Product 
{ 
    [Key] 
    public Guid Id { get; set; } 
    public String Name { get; set; } 
    [ForeignKey("SoftwareManufacturer")] 
    public Guid SoftwareManufacturerId { get; set; } 
    public virtual Manufacturer SoftwareManufacturer { get; set; } 
} 

public class Manufacturer 
{ 
    [Key] 
    public Guid Id { get; set; } 
    public String Name { get; set; } 
} 

나는 그게 당신이 원하는 것을 할 것이라고 생각 :

@Html.DisplayFor(model => model.SoftwareManufacturer.Name) 

이이 같이 수업을 가정합니다.