저는 Microsoft Visual Studio, ASP에서 프로젝트 작업을하고 있습니다. NET MVC5 (C#) 어디 html 도우미와 강력한 형식화 된보기에서 가격 목록을 표시하려면. 내가 (아니이 경우 그러나)이 프로젝트에 대한 단일 뷰에서 여러 모델에 액세스해야하기 때문에, 내가하는 뷰 모델을 생성과 같이했습니다 당신이 볼 수 있듯이MVC 5 View "Pricelist"라는 내 사전을 찾을 수 없습니다.
public class ReservationViewModel
{
public Customer Customer { get; set; }
public Invoice Invoice { get; set; }
public OrderItem OrderItem { get; set; }
public Dictionary<string, decimal> Pricelist { get; set; }
public ReservationViewModel() {
Customer = new Customer();
Invoice = new Invoice();
OrderItem = new OrderItem();
Pricelist = new Dictionary<string, decimal>();
}
public void PopulatePricelist()
{
Pricelist.Add("Select specie", 0);
Pricelist.Add("Bird spider", 90);
Pricelist.Add("Buggie", 70);
Pricelist.Add("Canary", 60);
Pricelist.Add("Chinchilla", 70);
Pricelist.Add("Cat", 140);
Pricelist.Add("Dog", 200);
Pricelist.Add("Guinea pig", 80);
Pricelist.Add("Hamster", 80);
Pricelist.Add("Iguana", 160);
Pricelist.Add("Rabbit", 90);
Pricelist.Add("Snake", 80);
}
}
, 난 내 사전라는 이름의 한 "가격표". 내가하고 싶은 일은 그 목록을 반복하고 강력한 형식의보기에 모든 항목을 표시하는 것입니다. 이보기 내에서,이 같은 내 뷰 모델을 참조 :
@model PetsParadise.ViewModels.ReservationViewModel
나는 사전을 통해 반복하는 가장 좋은 방법은이 방법을 사용하는 것입니다 읽었습니다 :
@foreach (KeyValuePair<string, decimal> entry in Pricelist) {
<tr>
<td>@entry.Value</td>
</tr>
내 문제는 '가격표'는 내용의 오류를 잡아 것입니다 : "이름"가격표 내가 MVC 5 일반적으로 C#을 아주 새로운 해요 "현재 컨텍스트에 존재하지 않는"그래서 난에 대한 appologize 이 질문은 내가 가진 것처럼 그것이 바보 같다고 느낀다. 그러나 나는 지금까지 도처에서보고 있었다. 그리고 대답을 발견 할 것 같지 않다. 또한이 프로젝트에 SQL Server Management Studio 2008 데이터베이스를 구현 했으므로 ViewModel에 표시된 Customer, Invoice 및 OrderItem 클래스가 'Models'폴더 내에 있지 않다는 것을 의미합니다. 이것이 관련성이 있는지 확실하지 않습니다.
'Model.Pricelist'에서 @foreach ...를 사용하십시오. –