关于.NET CORE 1.1无法使用PartialView的一种解决办法

 项目环境:VS2017+.NET CORE1.1    MVC6


我在项目中遇到一个问题,就是A的主页面中嵌套一个B页面。可以理解为A为主页面,B为列表页面,


想像以往MVC一样使用分部视图PartialView,来实现这个功能。但是发现一个问题,就是当我使用PartialView时,调用的页面是不会经过控制器的


因为.NET CORE的资料相对而言还是比较少的,短时间内没太想到好的解决方案,于是机智的同事想了一个办法:


在A页面通过ajax请求来调用B页面


代码如下:


var url = '@Url.Action("BookSearchList", "Search")';
            var data = { "strDBType": strDBType, "strCondition": strCondition, "nPageIndex": nPageIndex};
             var strhtml = GetResultData(url, data);//这是ajax
             $("#divBookSearchList").html(strhtml);//你想要放PartialView的div
function GetResultData(url, data) {
    var resultData;
    $.ajax({
        type: "post",
        async: false,
        url: url,
        data: data,
        success: function (d, status) {
            resultData = d;
        }
    });
    return resultData;
}
public IActionResult BookSearchList(string strDBType, string strCondition, int nPageIndex)
        {
//控制器内的写法
IList<BookSearch> crossSearchList = FZG_CrossSearch_BO.GetBookSearchData();
return PartialView(crossSearchList);
}



在A页面使用ajax,去请求Controllers,然后将获取到的内容放入你所需要的html标签内
发布了14 篇原创文章 · 获赞 1 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/m0_37302219/article/details/78272081