0

控制器:

public ActionResult Details(int id)
    {
        ViewBag.AccountType = new BusinessLayer.AccountTypeManager().GetAccountTypes();
        return View(new BusinessLayer.AccountManager().getAccount(id));
    }

看法:

<div class="display-label">Account Type</div>
<div class="display-field">@Html.DisplayFor(modelItem => modelItem.AccountType)</div><br />

此当前视图显示 AccountType ID。如何显示由 ViewBag.AccountType (IEnumerable) 传递的 AccountType 名称

4

1 回答 1

0

类似以下的东西

<div class="display-label">Account Type</div>
<div class="display-field">@Html.DisplayFor(modelItem => modelItem.AccountType)</div>
@{
    var TypeNames = ViewBag.AccountType as IEnumerable<string>;

    foreach(var item in TypeNames)
    {
        <div>item</div>
    }
}

模式优雅的方式

public class AccountTypeVewModel
{
    public IEnumerable<string> typeNames { get; set; }
    public Account account { get; set; }
}

控制器

public ActionResult Details(int id)
{
    AccountTypeVewModel model = new AccountTypeVewModel();
    model.typeNames = new BusinessLayer.AccountTypeManager().GetAccountTypes();
    model.account = new BusinessLayer.AccountManager().getAccount(id);
    return View(model);
}

看法

<div class="display-label">Account Type</div>
<div class="display-field">@Html.DisplayFor(modelItem => modelItem.account.AccountType)</div>
@{
    foreach(var item in Model.typeNames)
    {
        <div>item</div>
    }
}
于 2013-05-09T13:03:08.907 回答