0

你好朋友我想列出我的数组,我的数据来自 Web 服务,所以我不能使用 Html.DisplayFor(model=>model.) 这是我的代码

@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) 

                }
4

2 回答 2

0

首先,您不应该从视图中调用 Web 服务。我想你可能正在做测试。我建议您创建一个负责服务调用的 BL 类,最重要的是,我强烈建议您创建一个视图模型类,该类将复制您需要在视图中显示的属性。

不要在视图中直接使用 Web 服务返回的实体,这真的很糟糕。正如我所说,创建视图模型并创建您需要在视图中使用的必要属性。在复杂的情况下,您可以使用AutoMapper之类的工具来映射 Web 服务实体和视图模型之间的属性。

于 2012-08-31T15:18:28.320 回答
0

这类似于这个问题:@Html.DisplayFor 语法是什么? 您需要为任何类型的 .Adi 创建显示模板。

于 2012-08-31T12:07:10.463 回答