[原创]Asp.net MVC 学习之路-002

简介: [原创]Asp.net MVC 学习之路-002

_ViewStart有局部和全局之分,如果在Views根目录下则是全局,如果在Views的子文件夹下则是局部的。


<b>int?</b>:表示可空类型,就是一种特殊的值类型,它的值可以为null,给变量(int类型)赋值为null,而不是0,防止未给id传值的时候程序报错。

public ActionResult Welcome(int? id)
        {
            ViewBag.id = id;
            return View();
        }

<b>重点:Html扩展方法的自定义</b>


强类型页面与弱类型页面



对于向前台传递数据

1.弱类型

后端:

public ActionResult ShowCustomer(int id)
        {
            //根据Id获取当前的Customer信息,并且展示到View
            Customer customer = new Customer() { Id = id, SName = "Fnatic", Email = "1185@qq.com", Age = 21 };
            //弱类型,给到前端再强转到Customer类型
            ViewData["customer"] = customer;    //将数据给到一个容器ViewDat[]
            return View();
        }

前端:

<div>
    @{
        var customer = ViewData["customer"] as Customer;    //从ViewData[]中取出数据再装换为Customer类型。
    }
    <table>
        <tr>
            <td>用户名:</td><td>@customer.SName</td>
        </tr>
        <tr>
            <td>年龄:</td>
            <td>@customer.Age</td>
        </tr>
        <tr>
            <td>邮箱:</td>
            <td>@customer.Email</td>
        </tr>
        <tr>
            <td>顾客编号:</td>
            <td>@customer.Id</td>
        </tr>
    </table>
</div>

2.强类型

后端:

public ActionResult Detail(int id)
        {
            Customer customer = new Customer() { Id = id, SName = "Fnatic", Email = "1185@qq.com", Age = 21 };
            ViewData.Model = customer;      //Model获取或设置与视图数据关联的模型
            return View();
        }

前端:

<div>
    @{
        Customer customer = ViewData.Model;
    }
    <table border="1px">
        <tr>
            <td>用户名:</td>
            <td>@customer.SName</td>
        </tr>
        <tr>
            <td>年龄:</td>
            <td>@customer.Age</td>
        </tr>
        <tr>
            <td>邮箱:</td>
            <td>@customer.Email</td>
        </tr>
        <tr>
            <td>顾客编号:</td>
            <td>@customer.Id</td>
        </tr>
    </table>
</div>


一个页面只能有一个model

所以如果有多个model应该在后端把model放进集合,再传给前端

补充: 对于HtmlHelper方法

弱类型:@Html.TextBox("asdasd");

强类型:@Html.TextBoxFor    的使用

相关文章
|
14天前
|
Java 物联网 C#
C#/.NET/.NET Core学习路线集合,学习不迷路!
C#/.NET/.NET Core学习路线集合,学习不迷路!
|
2月前
|
开发框架 缓存 算法
开源且实用的C#/.NET编程技巧练习宝库(学习,工作,实践干货)
开源且实用的C#/.NET编程技巧练习宝库(学习,工作,实践干货)
|
3月前
|
开发框架 前端开发 JavaScript
ASP.NET MVC 教程
ASP.NET 是一个使用 HTML、CSS、JavaScript 和服务器脚本创建网页和网站的开发框架。
43 7
学习计算机组成原理(王道考研)------第十一天https://zhengyz.blog.csdn.net/article/details/121706379?spm=1001.2014.3001.5502
这篇文章是关于计算机组成原理的王道考研学习笔记,主要介绍了半导体存储器RAM和ROM的相关知识。
学习计算机组成原理(王道考研)------第十一天https://zhengyz.blog.csdn.net/article/details/121706379?spm=1001.2014.3001.5502
|
3月前
|
存储 开发框架 前端开发
ASP.NET MVC 迅速集成 SignalR
ASP.NET MVC 迅速集成 SignalR
64 0
|
4月前
|
开发框架 前端开发 .NET
ASP.NET MVC WebApi 接口返回 JOSN 日期格式化 date format
ASP.NET MVC WebApi 接口返回 JOSN 日期格式化 date format
49 0
|
4月前
|
开发框架 前端开发 安全
ASP.NET MVC 如何使用 Form Authentication?
ASP.NET MVC 如何使用 Form Authentication?
|
7月前
|
开发框架 前端开发 .NET
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
195 0
|
7月前
|
开发框架 前端开发 JavaScript
JavaScript云LIS系统源码ASP.NET CORE 3.1 MVC + SQLserver + Redis医院实验室信息系统源码 医院云LIS系统源码
实验室信息系统(Laboratory Information System,缩写LIS)是一类用来处理实验室过程信息的软件,云LIS系统围绕临床,云LIS系统将与云HIS系统建立起高度的业务整合,以体现“以病人为中心”的设计理念,优化就诊流程,方便患者就医。
81 0
|
存储 开发框架 前端开发
[回馈]ASP.NET Core MVC开发实战之商城系统(五)
经过一段时间的准备,新的一期【ASP.NET Core MVC开发实战之商城系统】已经开始,在之前的文章中,讲解了商城系统的整体功能设计,页面布局设计,环境搭建,系统配置,及首页【商品类型,banner条,友情链接,降价促销,新品爆款】,商品列表页面,商品详情等功能的开发,今天继续讲解购物车功能开发,仅供学习分享使用,如有不足之处,还请指正。
170 0