前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >辅助方法、模型、视图数据

辅助方法、模型、视图数据

作者头像
发布2018-09-03 16:41:41
5830
发布2018-09-03 16:41:41
举报
文章被收录于专栏:WD学习记录

eg1:

如果想在一个表单中显示价格,可以用下边的控制器代码:

代码语言:javascript
复制
public ActionResult Edit(int id){
    ViewBag.Price=10.0;
    return View();
}

在相应的视图中,使用 ViewBag 中的值来为 TextBox 辅助方法命名,可以实现渲染显示价格的文本框:

代码语言:javascript
复制
@Html.TextBox("Price")

将会生成如下的HTML标记

代码语言:javascript
复制
<input id="Price" name="Price" type="text" value="10"/>

eg2:

当辅助方法查看 ViewData 里边的内容时,它们也能看到其中的对象属性。

控制器代码:

代码语言:javascript
复制
public ActionResult Edit(int id){
    ViewBag.Album = new Album{Price=11};
    return View();
}

在视图中使用代码:

@Html.TextBox("Album.Price")

渲染出的HTML标记如下:

代码语言:javascript
复制
<input id="Album_Price" name="Album.Price" type="text" value="11"/>

如果在 ViewData 中没有匹配“Album.Price” 的值,那么辅助方法将尝试查找与第一个点之前那部分名称(Album)匹配的值。换言之,就是找一个Album类型的对象。然后,辅助方法估测名称中剩余部分(Price),并找到相应的值。

渲染得到的input元素的id特性值使用下划线代替了点,是因为在id特性中包含点是非法的。

eg3:

TextBox辅助方法依靠强类型视图数据也能很好的工作。

控制器代码:

代码语言:javascript
复制
public ActionResult Edit(int id){
    var album = new Album{Price=12.0m};
    return View(album);
}

页面代码:

代码语言:javascript
复制
@Html.TextBox("Price")

渲染生成的HTML标记

代码语言:javascript
复制
<input id="Price" name="Price" type="text" value="12.0"/>

如果想避免自动查找数据,可以向表单提供一个显示的值,显示提供值得方法是必需的。

控制器代码:

代码语言:javascript
复制
public ActionResult Edit(int id){
    var album = stareDB.Albums.Single(a=>a.AlbumId==id);
    ViewBag.Genres = new SelectList(storeDB.Genres.OrderBy(g=>g.Name),
                     "GenreId"."Name",album.GenreId);
    return View(album);
}

视图中的代码:

代码语言:javascript
复制
@Html.TextBox("Title",Model.Title)

辅助方法在查找强类型模型对象之前,会首先查看ViewBag,如果ViewBag中有Title,那就会接收ViewBag中的Title

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2015年12月11日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
图数据库 KonisGraph
图数据库 KonisGraph(TencentDB for KonisGraph)是一种云端图数据库服务,基于腾讯在海量图数据上的实践经验,提供一站式海量图数据存储、管理、实时查询、计算、可视化分析能力;KonisGraph 支持属性图模型和 TinkerPop Gremlin 查询语言,能够帮助用户快速完成对图数据的建模、查询和可视化分析。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档