У меня есть форма, в которой у меня есть три частичных вида и одна сетка, поэтому для всех этих 4 существует 4 разных видаМодель используется. Теперь, согласно Моему пониманию, будет один более ViewModel, который включает в себя все 4 ViewModel, и из которых один будет IEnumarable, который будет использоваться Grid.более одной ViewModel на той же странице в MVC
Моего код выглядит следующим образом:
@model IEnumerable<Invoice.Models.ViewModels.Setup.AccountViewModel>
@{
ViewBag.Title = "Account";
Layout = "~/Views/Shared/_LayoutGrid.cshtml";
}
@(Html.Kendo().Grid(Model)
.Name("Account")
.Columns(columns =>
{
columns.Bound(p => p.AccountType).Title("Account Type").Width(250);
columns.Bound(p => p.AccountName).Title("Account Name").Width(300);
columns.Bound(p => p.Currency).Title("Currency").Width(120);
columns.Bound(p => p.Status).ClientTemplate("#=data.Status#").Width(150);
})
.ToolBar(toolbar =>
{
toolbar.Template(@<text>
<div class="row-fluid">
<div class="span1">
<div class="toolbar" style="height:25px;">
<ul id="menu" style="width:38px; margin-left:22px;" class="span6">
<li style="width:36px;">
<i class="fa fa-plus"></i>
<ul>
@foreach (var account in @ViewBag.AccountType)
{
<li style="width:100px;" class="openid">
@if(@account.Value=="Bank")
{
<label id="Bank1">@account.Value</label>
}
@if(@account.Value=="CreditCard")
{
<label id="Credit">@account.Value</label>
}
@if(@account.Value=="Cash")
{
<label id="Cash1">@account.Value</label>
}
</li>
}
</ul>
</li>
</ul>
</div>
</div>
</div>
</text>);
})
<div id="Bank">
@Html.Partial("_BankDetails")
</div>
<div id="Cash">
@Html.Partial("_CashDetails")
</div>
<div id="Credit">
@Html.Partial("_CreditCardDetails")
</div>
Здесь, как вы можете видеть, я использую AccountViewModel, который используется для отображения сетки Только но есть еще 3 ViewModel для завершения заполнения этого частичного вида.
Элемент модели, переданный в словарь, имеет тип «System.Collections.Generic.List'1 [Invoice.Models.Vie wModels.Setup.AccountViewModel] ', но для этого словаря требуется элемент модели типа «Invoice.Models.ViewModels.Setup.OverAllViewModel». – SantyEssac
все еще получает эту ошибку, и я включил модель следующим образом в верхней части View @model Invoice.Models.ViewModels.Setup.OverAllViewModel – SantyEssac
Попробуйте использовать ключевое слово 'Virtual', где бы вы ни находились,' IEnumerable'. Я отредактировал сообщение выше. Проверьте и сообщите нам, если вы все еще получаете эту ошибку. –