카테고리 모델이 있습니다
public class Category
{
//[PlaceHolder("Select file")]
//[UmbracoRequired("Form.Label.Import.SelectFile")]
//[UmbracoDisplay("Form.Label.Import.SelectFile")]
//[Required]
public int Id { get; set; }
public string Name { get; set; }
}
내 컨트롤러에서 생성 된 카테고리 목록
List<Category> items = new List<Category>();
카테고리 목록은 다른 모델 코스를 표시하는 foreach 루프가있는 (강력하게 입력 된)보기에서 사용해야합니다.
<td>
@Html.DisplayFor(modelItem => item.Students)
</td>
<td>
@Html.DisplayFor(modelItem => item.AdmissionInfo)
</td>
<td>
@Html.DisplayFor(modelItem => item.CategoryId)
</td>
그래서 대신
@Html.DisplayFor(modelItem => item.CategoryId)
Course 모델의 CategoryId 값에 따라 Category 유형의 Name 속성을 표시해야합니다.
SelectList categories = new SelectList((IEnumerable<MvcImport.Models.Category>)ViewData["categories"], "Id", "Name", item.CategoryId);
예 :
@Html.DisplayFor(categories.Where(m => m.Id == item.CategoryId).FirstOrDefault())
그러나 그 마지막 줄은 작동하지 않습니다.
값을 호출하는 방법을 잘 모르겠습니다. (드롭 다운을 표시하지 않고 선택한 값만 표시)
감사
이 방법으로 시도 할 수 있습니다.
@Html.DisplayFor(modelItem => categories.First(m => m.Id == item.CategoryId).Name)
또는 더 안전하게 (가독성을 위해 형식화 됨) :
@Html.DisplayFor(modelItem => categories.Where(m => m.Id == item.CategoryId)
.Select(m => m.Name)
.FirstOrDefault())
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다