MVC项目的简单总结
不能说是庆幸吧,正赶上公司要开发一个小小的MVC项目,于是这样任务就只有我自己承担,在这个项目中我才彻底感觉到自己之前有关MVC知识的无知,以为接触了皮毛就感觉能做项目,只要有心动脑思考就能完成一个完整的小项目,其实并不是这样的,还是踏踏实实的实战才是最有效的吧,之前也说要好好学习那,但是从开始北漂似乎就没有安静下来学习的吧,总是感觉有无数的事情想要去做,却总是忙不完,但是去想一下,其实并没有什么一定要做的事情要做,不是因为不想学习,是需要一颗稳定的心吧,这样机会就来啦,入职的工作已经办完,一切都稳定了吧,以后每天可能重复着同样的节律,上班,敲代码,下班。。。就是这样的生活节奏让我有了跨越三个月重新拿起我的学习来填满我的生活。好啦,想必好多友友都是大神啦,但是我还是有我需要谨记的东东那,还是总结一些我要记忆的吧。
一.controller向view传参
<1>使用ViewDate传参
ViewData["Name"] = Request.Form["Name"];
@Html.Encode(ViewData["Name"])
其实上面的ViewDate就是获取拿到的值设置一个键,然后在view中重新拿到这个键即可,这样是最简单的一种吧,其实在这里说ViewDate传值的问题,就想起来我在遇到一个情况,是之前不太清楚而且不敢去尝试的问题吧,就是controller中的其中一个Action获取到一个值,但是想当前controller其他的Action中用应该怎么办?我在项目中就简单的创建了session,虽然这不是什么好方法,但是感觉用起来还是蛮方便的哦,嘿嘿,如下所示:
model.Name = Request.Form["Name"];
Session["Name"] = model.Name;
这样是我们拿到值然后创建一个session,接下来我们就去拿session的值即可。
另外想说的是我们的ViewDate不仅仅是传一个string类型的值到View上面,它甚至可以传一个List集合到View中,如下所示:
List<Student> stuModel = stuBll.GetAllStudentById(id);
ViewData["stuModel"] = stuModel;
上面是我们在controller中创建传值,接下来简单的总结下在view中怎么拿值:
@{List<Student> stuModel = ViewData["stuModel"] as List<Student>;}
@if (stuModel.Count > )
{
foreach (var item in stuModel)
{
<span class="stuId">@item.Name</span>
}
}
就这样我们就可以在view中拿到一个我们想遍历的集合啦,其实我们为什么不返回model实体类那,这就是为什么要使用ViewDate返回集合的原因吧,在一个View中只能使用一个model,所以在不得已时间我们只能使用其他的方法啦,嘿嘿。
另外简单的总结一个List集合中如果存放一个数组我们应该如何遍历?
@{List<string[]> stuModel = ViewData["stuModel"] as List<string[]>;}
@if (stuModel.Count > )
{
foreach (string[] stu in stuModel)
{
for (int i = ; i < stu.Length; i++)
{
<span class="Id" href="#">›@stu[]</span>
<span class="Name" hidden>›@stu[]</span>
<span class="Gender" hidden>›@stu[]</span>
}
}
}
上面总结List中的数组遍历主要是因为前几天去接触工作流的项目啦,一直没用到这个的原因吧,嘿嘿,还真是容易忘记,在这里记得遍历时间加上@啦。
二.controller中返回model应该怎么引用怎么使用
只学习不练习就是一个大坑,其实没有练习就是什么也没学习到啦,直到我开始做项目我才知道我竟然引用model不知道啦,那时间很是意外啊。
首先我们在返回model时间,在controller中需要返回model,然后在view中引用并遍历数据,controller中的示例即如下所示:
public ActionResult Index()
{
List<Student> stuModel = adBll.GetAllstuModel(id);
return View(models);
}
简单的总结下view中我们应该怎么写的啦。
@using Demo.Model;
@model List<Student> foreach (var item in Model)
{
<td>@Html.DisplayFor(modelItem => item.Name)</td>
}
好啦,今天就暂时总结到这里啦,嘿嘿,要过端午节啦,亲们都好好玩哈,祝亲们端午节快乐,一见粽情哦,0.0
MVC项目的简单总结的更多相关文章
- 【Spring】搭建最简单的Spring MVC项目
每次需要Spring MVC的web项目测试一些东西时,都苦于手头上没有最简单的Spring MVC的web项目,现写一个. > 版本说明 首先要引入一些包,Spring的IOC.MVC包就不用 ...
- spring mvc项目中导出excel表格简单实现
查阅了一些资料,才整理出spring mvc 项目导出excel表格的实现,其实很是简单,小计一下,方便以后查阅,也希望帮助有需要的朋友. 1.导入所需要依赖(Jar包).我使用的是maven,所以坐 ...
- vs2015制作一个超级简单的MVC项目
使用vs2015制作一个超级简单的MVC项目 本文链接:https://blog.csdn.net/qq_40919762/article/details/100705314 直奔主题一,创建一个 ...
- 简单Spring MVC项目搭建
1.新建Project 开发环境我使用的是IDEA,其实使用什么都是大同小异的,关键是自己用的顺手. 首先,左上角File→New→Project.在Project页面选择Maven,然后勾上图中所示 ...
- 创建简单的MVC项目
一,新建一个空的MVC项目 二,连接数据库,添加一个实体模型Model.edmx
- 采用MiniProfiler监控EF与.NET MVC项目(Entity Framework 延伸系列1)
前言 Entity Framework 延伸系列目录 今天来说说EF与MVC项目的性能检测和监控 首先,先介绍一下今天我们使用的工具吧. MiniProfiler~ 这个东西的介绍如下: MVC Mi ...
- ASP.NET MVC Ajax.ActionLink 简单用法
ASP.NET MVC 项目中,如何使用类似于 iframe 的效果呢?或者说 Ajax 局部刷新,比如下面操作: 我们想要的效果是,点击 About 链接,页面不刷新(地址栏不变),然后下面的内容进 ...
- IntelliJ IDEA上创建maven Spring MVC项目
IntelliJ IDEA上创建Maven Spring MVC项目 各软件版本 利用maven骨架建立一个webapp 建立相应的目录 配置Maven和SpringMVC 配置Maven的pom.x ...
- 【MVC拾遗】MVC的单元测试简单学习总结
关于测试的必要性什么的已经在 重构与测试 里扯过了.倒也没必要说,写的代码多了自然就明白这个东西重要性. 当时说了坐等被推动去学习单元测试来着,然而等着被人推动的结果就是根本就没人来推你.o(∩_∩) ...
随机推荐
- Solr系列五:solr搜索详解(solr搜索流程介绍、查询语法及解析器详解)
一.solr搜索流程介绍 1. 前面我们已经学习过Lucene搜索的流程,让我们再来回顾一下 流程说明: 首先获取用户输入的查询串,使用查询解析器QueryParser解析查询串生成查询对象Query ...
- Java如何从数组中查找公共的元素?
在Java中,如何从数组中查找公共的元素? 示例 以下示例显示了如何从两个数组中查找公共元素并将其存储在数组中. package com.yiibai; import java.util.*; pub ...
- 模式识别之bayes---bayes 简单天气预测实现实例
Bayes Classifier 分类 在模式识别的实际应用中,贝叶斯方法绝非就是post正比于prior*likelihood这个公式这么简单,一般而言我们都会用正态分布拟合likelihood来实 ...
- php可选缓存APC
1.APC缓存简介 APC,全称是Alternative PHP Cache,官方翻译叫”可选PHP缓存”.它为我们提供了缓存和优化PHP的中间代码的框架. APC的缓存分两部分:系统缓存和用户数据缓 ...
- EF5+MVC4系列(8) ActionResult的返回值
我们在MVC的代码中,经常会看到这样的一个 代码 可能有人会有疑问,既然我定义的是ActionResult,为什么返回值会是View方法呢? 其实这个View方法的返回值的类型是ActionResul ...
- (个人)CentOS的JDK安装
一. 卸载JDK 1. 通过如下命令查看当前JDK的相关内容 rpm -qa | grep java 2. 如果出现如下内容 java-1.7.0-openjdk-1.7.0.9-2.3.4.1.el ...
- 机器学习——使用Apriori算法进行关联分析
从大规模的数据集中寻找隐含关系被称作为关联分析(association analysis)或者关联规则学习(association rule learning). Apriori算法 优点:易编码实现 ...
- Linux服务器安装svn
云安装 yum install subversion 配置 1.配置仓库 [root@localhost /]# cd /home [root@localhost home]# mkdir svn [ ...
- GCT之语文细节知识
以下是在微博中看到的,大部分人都会读错的汉字,这也是历届GCT考试的前几道选择题可能会出的题库资源吧,高考的时候也大都考的这些,拿来共享给大家.一定要看哦.
- 小波变换——哈尔小波,Haar
哈尔小波转换是于1909年由Alfréd Haar所提出,是小波变换(Wavelet transform)中最简单的一种变换,也是最早提出的小波变换. Alfréd Haar,1885~1933,匈牙 ...