• MVC项目总结


    View命名

    View下有多个模块的文件夹,我们根据微软的规定,每个模块下的首页都为Index.cshtml命名

    获得当前页面的控制器名称

    var currentControllerName = this.ViewContext.RouteData.Values["controller"].ToString();

    获得当前循环数组的index

    @foreach (var banner in banners)
    {

    var index = banners.IndexOf(banner);

    }

    @using

    如果view里边需要频繁引入某个命名using XXX,我们选择在_ViewImports.cshtml文件中引入,相当于整个项目中都引用;

    例如,在VR课堂项目中的该文件我们添加以下两行,整个项目中都可以使用:

    @using vrlive.Models
    @using vrlive.BLL

    view直接访问BLL里边的仓库文件

    view中可以直接访问BLL文件夹下的仓库文件,来访问数据库,获得所需的信息,方法如下:

    1. 在view中使用inject引入所需仓库文件@inject BannerRepository BannerRepository
    2. 获得该仓库下的信息:var banners = BannerRepository.GetBannerList();
    3. 使用变量banners,即可得到GetBannerList()函数下返回的数据;

    定义数组

    • new string[] { "大一课程", "大二课程", "大三课程", "大四课程" }
    • string[][] orderType = new string[][] { new[] { "最新", "AddTime" }, new[] { "热门", "VisitCount" }, new[] { "关注量", "FavoriteCount" } };

    类型转换

    • Convert.ToInt32(ViewData["pageNo"]): 将object转换为number类型
    • ViewData["currentVideoPath"] as string:将object转换为string类型
    • Convert.ToBoolean(ViewData["currentVideoIsLive"]):将object转换为bool类型

    获取当前url

      • 获取当前url的参数:
        @using Microsoft.Extensions.Primitives

        StringValues videoId;
        this.ViewContext.HttpContext.Request.Query.TryGetValue("singleVideoId", out videoId);
        var singleVideoId = videoId.ToString();

      • 获取当前的url包括参数
        string url = this.ViewContext.HttpContext.Request.Path + this.ViewContext.HttpContext.Request.QueryString; 

  • 相关阅读:
    网站、博客、文章推荐
    hdu 4000 Fruit Ninja
    2011年 北京区域赛A题 Qin Shi Huang's National Road System // hdu 4081 Qin Shi Huang's National Road System 最优比率生成树
    2008 北京区域赛 Minimal Ratio Tree
    uva 10608 Friends 并查集
    2011 北京区域赛 Hou Yi's secret // hdu 4082
    C/C++中有关字长与平台无关的整数类型(转)
    C/C++中有关字长与平台无关的整数类型(转)
    C# Windows Media Player 控件使用实例 方法(转)
    c# 系统时间
  • 原文地址:https://www.cnblogs.com/maoyazhi/p/6104428.html
Copyright © 2020-2023  润新知