2013-03-26 2 views
0

나는 다음과 같이 C# MVC Model을가집니다.모델 C# MVC에서 값 가져 오기

public class MyModel 
{ 
    ... 
    public IEnumerable<MyModel> allDetails { get; set; } 
    public int age { set; get; } 
    public string gender { set; get; } 
    public int schoolid { set; get; } 
    ... 
} 

이제 allDetails에서 데이터를 검색하려고합니다. 내가 어떻게 해 ?

controller에서;

model.allDetails = MyDetails.getAllDetails(); // Saves all details in the Model 

지금 내가 어떻게이 model에서 age, gender and school 검색 할 수 있습니다; 나의 접근 방식은 다음과 같다 (하지만이 작동하지 않음) 코드 model.allDetails에서

model.allDetails.age; // This doesn't work 
+0

보기에 표시되는 코드는 무엇입니까? 보기에서'allDetails'에 데이터를 전달하고 있습니까? –

+0

출력이 뷰에서 사용되지 않습니다. 나는 모듈 자체의 컨트롤러 내부에서 추가 처리를 위해 모듈의 값을 사용하고있다. –

답변

2

(즉 IEnumerable을 구현하거나 다른 떨어지게) 목록입니다, 그래서 당신은 foreach 문 또는 다른 루프, 아니면 그냥 먼저 사용해야합니다() 그것에서 첫 번째 값을 얻을 수 있습니다 :. model.allDetails.First()를 세

0

을 나는 당신이 당신의 종로를 찾은 것 같아 클래스 MyModel 잘못, 당신은 아마 같은 두 개의 클래스가 있어야합니다

public class MyClass 
{ 
     ... 
     public IEnumerable<MyModel> allDetails { get; set; } 
     public int age { set; get; } 
     public string gender { set; get; } 
     public int schoolid { set; get; } 
     ... 
} 


public class MyModel 
{ 
    ... 
    public IEnumerable<MyClass> allDetails { get; set; } 
    ... 

} 

당신의 MyModel 클래스에는 너의 IEnumerable이 포함됩니다. r 속성을 포함하는 클래스. 나중에 컨트롤러를 통해 모델을 채울 수 있습니다.

현재 MyModel 클래스에서는 클래스 자체에 대해 IEnumerable을 유지하므로 해당 클래스의 각 개체에는 다른 IEnumerable 등이 있습니다.

속성 이름으로는 C# Coding Conventions (C# Programming Guide)이 표시 될 수도 있습니다.

관련 문제