在我的项目中,我尝试添加网格,但是显示以下错误“ HtmlHelper>”不包含“网格”的定义和最佳扩展方法重载 “ MvcGridExtensions.Grid(IHtmlHelper,IEnumerable)”需要类型为“ IHtmlHelper”的接收器
代码:
@model IEnumerable<SCM_MVC.Models.XXXXX>
@using NonFactors.Mvc.Grid;
@(Html
.Grid(Model)
.Build(columns =>
{
columns.Add(model => model.select).Titled("Name");
columns.Add(model => model.Surname).Titled("Surname");
columns.Add(model => model.MaritalStatus).Titled("Marital status");
columns.Add(model => model.Age).Titled("Age");
columns.Add(model => model.Birthday).Titled("Birthday").Formatted("{0:d}");
columns.Add(model => model.IsWorking).Titled("Employed");
})
.Empty("No data found")
.Filterable()
.Sortable()
.Pageable()
)
这是怎么了?
答案 0 :(得分:0)
发生此问题是因为NonFactors.Grid.Mvc6
包使用了IHtmlHelper
命名空间派生的Microsoft.AspNetCore.Mvc.Rendering
接口,而网格应该使用了HtmlHelper
命名空间的System.Web.Mvc
类,因此软件包与MVC 5不兼容。
我建议您卸载NonFactors.Grid.Mvc6
软件包(因为它是为ASP.NET Core MVC设计的),而改为使用NonFactors.Grid.Mvc5
软件包,方法是使用软件包管理器或控制台命令:
Uninstall-Package NonFactors.Grid.Mvc6
Install-Package NonFactors.Grid.Mvc5
注意:
您可以比较MVC 5和Core MVC版本的Grid
扩展方法的内容,这证明了不同的命名空间用法。
相关问题: