MVC中的自动装配功能

MVC的强大之一在于自动装配功能,也就是说,前台页面HTNL的name或是ID与后台代码ViewData["ID"]相同,并且为ViewData["ID"] 赋值,那么在渲染页面的时候,会自动将ViewData["ID"]的数据显示在前台页面。举个例子如下:

在前台页面中有如下代码:

<%: Html.DropDownList("City") %>

Action中的代码如下:

ViewData["City"] = new List<SelectListItem>()
{
new SelectListItem{Selected=false,Text="北京",Value="1"},
new SelectListItem{Selected=false,Text="上海",Value="2"},
new SelectListItem{Selected=false,Text="广州",Value="3"},
};

return View();

}

就会自动将数据装配到前台的页面中去。

在使用强类型的数据的时候这种自动装配功能依旧可以实现。

<td>顾客编号:</td><td><%: Model.Id%></td>

<td>顾客编号:</td><td><%: Html.TextBox("Id")%></td>

<td>顾客编号:</td><td><%: Html.TextBoxFor<UserInfo,int>(c=>c.Id)%></td>

这三种方式都可以实现数据自动装配功能。

时间: 2024-07-31 09:02:51

MVC中的自动装配功能的相关文章

WinForm应用程序中实现自动更新功能

WinForm应用程序中实现自动更新功能 编写人:左丘文 2015-4-20 近来在给一客户实施ECM系统,但他们使用功能并不是我们ECM制造版提供的标准功能,他们要求对系统作一些定制功能,为了避免因程序的bug而带来频繁让用户更新程序的不良影响,就想给ECM增加一个winform自动更新功能,今天在这里,我想与大家一起分享代码,在此做个小结,以供参考.有兴趣的同学,可以一同探讨与学习一下,否则就略过吧.   1. 首先我们在这里先分析一下其它程序猿的一些基本情况: 相信有许多程序猿都喜欢用Wi

Spring中类型自动装配--byType

在Spring中,"类型自动装配"的意思是如果一个bean的数据类型与其它bean属性的数据类型相同,将自动兼容装配它. 例如,一个"persion" bean 公开以"ability"类数据类型作为属性,Spring会找到ability类相同的数据类型,并自动装配它的Bean.如果没有匹配找到,它什么也不做. package auto_w; /** * Created by luozhitao on 2017/8/8. */ public cl

Spring中的自动装配案例分析

Spring_Autowiring collaborators 在Spring3.2.2中自动装配类型,分别为:no(default)(不采用自动装配).byName,byType,constructor下面来分别介绍一下这些是如何自动装配的 <bean id="foo" class="...Foo" autowire="autowire type"> Mode Explanation no (Default) No autowiri

spring第一课,beans配置(中)——自动装配

bean的配置除了有手动配置,还有自动装配这一说法,具体怎么操作,如下代码事例. 自动装配可根据bean的名称与配置bean属性名称的对应进行配置,也可根据bean的类型与配置bean属性的类型进行配置. 1.自动配置 byName person类 1 package com.org.spring.beans; 2 3 public class Person { 4 private String name; 5 private int age; 6 private Car car; 7 8 @O

ASP.NET MVC中的模型装配 封装方法 非常好用

我们知道在asp.net mvc中 视图可以绑定一个实体模型 然后我们三层架构中也有一个model模型 但是这两个很多时候却是不一样的对象来的 就拿微软的官方mvc例子来说明 微软的视图实体中 有loginmodel 有registermodel 等等 这些视图模型 都只是占用户实体的某几个字段而已, 那么这个时候 我们可以用下面两个方法来转换 自动赋值两个对象的 protected T AssembleInfo<T, T2>(T2 model)        {            Pro

GoEasy实现web实时推送过程中的自动补发功能

熟悉GoEasy推送的朋友都知道GoEasy推送能够非常准确稳定地推送到客户端.在后台功能中查看接收信息详情时,可有谁注意到有时候在发送记录里有一个红色的R标志?R又代表的是什么意思呢? 在推送的过程中,不免有些用户或客户端当时的网络状态不太好,这些外在的因素会导致用户漏收到一些消息.GoEasy也考虑到了这些问题,他们是怎么解决这个问题的呢? 细心的朋友可能注意到了,在后台功能中,可以查看每个在线client的断开重连情况. GoEasy记录每个client的在线重连情况就可以判断哪些客户端还

关于mybatis plus 中 MetaObjectHandler 自动填充功能出现的问题及处理

1.自动填充的字段: createdBy,updatedBy,createdDate,updatedDate /*** 插入使用*/ @Override public void insertFill(MetaObject metaObject) { String operator = "bokai"; fillValue(metaObject, CREATED_BY, () -> operator); fillValue(metaObject, UPDATED_BY, () -&

phpstorm中FTP自动同步功能

首先打开PhpStorm软件,新建个项目完成以后,找到Tools,  找到 Tools->Deployment->configruation点击进行设置,  点击configruation,点击加号添加ftp  填写ftp服务器地址,ftp用户名和密码,端口一般不用修改 填写完成以后测试一下是否能连接成功, . 6.点击advanced options... 勾选第一个passive mode 7.选择 retrieve accurate files timestamps 为awlays 8.

SpringBoot自动装配流程源码分析

SpringBoot 传统方式的SSM框架因为需要配置大量文件而被开发人员诟病重复性工作,所以SpringBoot的出现在减少开发人员做大量重复性配置的工作,使得开发人员能够快速的开始项目开发.更加专注于业务代码的编写.但SpringBoot跟SSM有什么框架不同呢?为什么SpringBoot可以自动装配呢?SpringBoot自动装配是如何实现的呢? SpringBoot入口 写过SpringBoot应用的开发者都知道,SpringBoot应用的启动类是被@SpringBootApplicat