美文网首页
asp.net mvc ViewComponent视图组件的使用

asp.net mvc ViewComponent视图组件的使用

作者: 醉酒的姑娘 | 来源:发表于2019-07-30 11:00 被阅读0次

项目中用到了viewcomponent 这里就来记录下

view页面调用组件示例

@await Component.InvokeAsync("RandomAdvert", new { advertGroup = "666", advertType = "1", size = 3 })

参数说明

RandomAdvert为组件名称
new { advertGroup = "666", advertType = "1", size = 3 }为参数

项目组件架构


image.png

控制器文件夹 ViewComponents
视图文件夹 View/Shared/Components/组件名称
控制器:名 + ViewComponent
视图:Default.cshtml为默认查找的视图,若自定义视图名,在需要在ViewComponent控制器中返回时指定该视图即可 return View("AdvertRandom");

项目中用到的控制器RandomAdvertViewComponent.cs

 public class RandomAdvertViewComponent: ViewComponent
{

    public async Task<IViewComponentResult> InvokeAsync(string advertGroup, string advertType, int size)
    {
        ViewBag.advertGroup = advertGroup;
        ViewBag.advertType = advertType;
        ViewBag.Size = size;
        return View("AdvertRandom");//自定义视图,所以需要返回视图名称
    }
}

项目中用到的视图组件AdvertRandom.cshtml

<div class="" id="viewcomponentadvert">
</div>
<script>
 $.ajax({
    type: 'get',
     url: apiUrl + '/api/Advert/GetAdvertByRandom',
     data: {advertGroup:@ViewBag.advertGroup, advertType:@ViewBag.advertType,size:@ViewBag.size},
     success: function (data, status) {
                        //省略...
    }
})
</script>

相关文章

网友评论

      本文标题:asp.net mvc ViewComponent视图组件的使用

      本文链接:https://www.haomeiwen.com/subject/cmaxrctx.html