【发布时间】:2018-04-07 01:36:29
【问题描述】:
我正在创建一个从主视图调用的视图组件(过滤器组件)。
主视图需要一个列表作为模型
@model IEnumerable<Filters>
在它的头部,它调用过滤器 ViewComponent
<vc:my-filter/>
Default.cshtml 组件视图需要 Filter 类
@model Filters
但是,当过滤器为null 时,组件模型从父视图接收相同的模型。并且类型不兼容;
InvalidOperationException:传递到 ViewDataDictionary 的模型项的类型为“Microsoft.EntityFrameworkCore.Query.Internal.EntityQueryable`1[Item]”,但此 ViewDataDictionary 实例需要一个“过滤器”类型的模型项。
我宁愿不将空的new Filter() 传递给 ViewComponent 视图模型,因为该组件已经实现了一些空验证。
我想不向视图组件发送任何模型。我该怎么做?我只是不想让它访问主页视图模型。
【问题讨论】:
标签: asp.net-mvc asp.net-core-mvc asp.net-core-2.0 asp.net-core-viewcomponent