朋友们,我想列出我的数据,我的数据来自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)
}
答案 0 :(得分:0)
这与此问题类似:What is the @Html.DisplayFor syntax for?您需要为任何类型创建显示模板.Adi是。
答案 1 :(得分:0)
首先,您不应该从视图中进行Web服务调用。我想你可能正在做测试。我建议你创建一个负责服务调用的BL类,最重要的是我强烈建议你创建一个视图模型类,它将复制你需要在视图中显示的属性。
不要直接使用视图中Web服务返回的实体,这非常糟糕。正如我所说,创建视图模型并创建您需要在视图中使用的必要属性。在复杂的情况下,您可以使用 AutoMapper 等工具来映射Web服务实体和视图模型之间的属性。