2012-08-31 4 views
0

안녕 내 배열을 나열 할 친구와 내 datas는 웹 서비스에서 온 내가 Html.DisplayFor 사용할 수 없습니다 (모델 => 모델입니다.) 여기보기에 내 코드입니다MVC3에 배열을 표시하는 방법은 무엇입니까?

@using icerik.TahakkukServices 


@{ 
    ViewBag.Title = "Deneme"; 
    Layout = "~/Views/Shared/_Layout5.cshtml"; 
} 


@{ 
    TahakkukServicesClient client = new TahakkukServicesClient(); 
    client.ClientCredentials.UserName.UserName = "service_test"; 
    client.ClientCredentials.UserName.Password = "..."; 
    client.ClientCredentials.ServiceCertificate.Authentication.CertificateValidationMode = System.ServiceModel.Security.X509CertificateValidationMode.None; 
    MakbuzList[] liste = client.GetMakbuzListe(2); 

} 

@foreach (var item in liste) 
{ 

Html.DisplayFor(item.Adi) 

       } 

답변

0

이에 비슷한입니다 이 질문 : What is the @Html.DisplayFor syntax for? .Adi가 어떤 유형이든 표시 템플릿을 만들어야합니다.

+0

하지만 "model"태그를 사용하지 않습니다. 내 데이터는 모델이 아닌 웹 서비스에서 가져 왔습니다. –

0

먼저보기에서 웹 서비스 호출을해서는 안됩니다. 제 생각에는 당신이 테스트를하고있는 것 같습니다. 서비스 호출을 처리하는 BL 클래스를 만드는 것이 가장 좋습니다. 가장 중요한 것은 뷰에 표시해야하는 속성을 복사 할 뷰 모델 클래스를 만드는 것이 좋습니다.

뷰에서 웹 서비스가 반환 한 엔티티를 직접 사용하지 마십시오. 정말 나쁩니다. 내가 말한 것처럼 뷰 모델을 만들고 뷰에서 사용해야하는 필요한 속성을 만듭니다. 복잡한 경우에는 AutoMapper과 같은 도구를 사용하여 웹 서비스 엔터티와 뷰 모델 간의 속성을 매핑 할 수 있습니다.

관련 문제