首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏WD学习记录

    ViewBag与ViewData

    ViewBag.CurrentTime等同于ViewData["CurrentTime"] 如果在ViewData["Key"]中存放一个值,那么不能使用ViewBag访问。 例如: @Html.TextBox("name",ViewBag.Name)。 要使这行代码通过编译有两种办法: 一是使用ViewData["Name"] 二是把ViewBag.Name值转换为一个具体的类型:(string)ViewBag.Name

    88520发布于 2018-09-03
  • 来自专栏python3

    ASP.NET MVC 3中ViewBa

    ViewBag, ViewData十分类似,都可用于把数据从controller传递到view。 ViewBag是WebViewPage中的一个属性,它的类型是dynamic。 从内部实现上,ViewBag属性是按照键值对那样存放在ViewData中的,因此也可以通过方为ViewData中值来访问ViewBag的值,他们指向的引用是同一个的。 但是区别在于,ViewData的写法是按照序列访问那样,通过索引访问,而ViewBag是通过属性访问。事实上,在编译阶段,编译器无法知道ViewBag所给的属性是否存在,这都是在运行时决定的。 举个例子,ViewData["Index"]可以写成:ViewBag.Foo,而不需要担心编译时错误。 我们可以通过下面的例子来验证ViewBag和ViewData其实指向的对象是同一个。 的类型是 @ViewBag.GetType(); ViewData的类型是 @ViewData.GetType(); ViewBag.XXX 的值是 @ViewBag.XXX ViewData[

    1.4K10发布于 2020-01-06
  • 来自专栏Ken的杂谈

    ASP.NET Core 入门教程 5、ASP.NET Core MVC 视图传值入门

    ViewBag 派生自 DynamicViewData,因此它可使用点表示法 (@ViewBag.SomeKey = ) 创建动态属性,且无需强制转换。 ViewBag 的语法使添加到控制器和视图的速度更快。 ViewBag 更易于检查 NULL 值。 示例:@ViewBag.Person?. 使用示例 创建Action:ViewBagDemo public IActionResult ViewBagDemo() { ViewBag.Title = "ViewBag传值示例"; ViewBag.Name = "ken"; ViewBag.Birthday = new DateTime(2000, 1, 1); ViewBag.Hobby = new string as String[]; }

    @ViewBag.Title

    • 姓名:@ViewBag.Name
    • 生日:@ViewBag.Birthday

    3.3K50发布于 2018-11-09
  • 来自专栏CSDNToQQCode

    .NET MVC第三章、三种传值方式

    .NET MVC第三章、三种传值方式 目录 .NET MVC第三章、三种传值方式 ViewData 传递方法 前台接收 ViewData测试 ViewBag 传递方法 前台接收 ViewBag测试 ViewBag ViewBag对象是ASP.NET MVC 3提供的功能,它被声明为一个dynamic类型。 [Dynamic] public dynamic ViewBag { get; } 传递方法 ViewBag.Info = "我是通过ViewBag传递的值"; 前台接收 @ViewBag.Info ViewBag测试 传递以及取值成功 TempData·支持夸函数 ViewData属性与ViewBag属性无法跨Action方法传递数据,当需要在多个Action方法之间传递数据时,可采用TempData

    77910编辑于 2022-11-30
  • 来自专栏SpringBoot教程

    C# MVC 向页面传值方式

    本文列举以下三种,主要传递一些简单的数据,集合类型数据最好用Model对象或者JSON串 ViewBag ViewData TempData ViewBag: public ActionResult = "@ViewBag.User.Unit.Id"; var userId = "@ViewBag.User.Id"; var userName = "@ViewBag.User.Name"; var userPwd = "@ViewBag.User.Password"; 页面直接引入: @ViewBag.User.Name ViewData: public ActionResult 理论上ViewBag要比ViewData慢一点点,但是几乎可以忽略,所以使用何种方式完全取决于个人的爱好。 TempData的使用同ViewData和ViewBag一样,TempData也可以用来向视图传递数据,只是ViewData和ViewBag的生命周期和View相同,它们只对当前的View有用。

    2K10编辑于 2023-02-16
  • 来自专栏CSDNToQQCode

    .NET MVC第四章、模型绑定获取表单数据

    = Request.QueryString["userName"]; ViewBag.pwd = pwd; return View(); } 视图层 

    表单传值

    <hr
    @ViewBag.pwd 效果: 模型获取值 在Models下创建User.cs作为模型 创建Users对象 控制器 public ActionResult Index(Users users) { ViewBag.userName = users.userName; ViewBag.pwd = users.pwd; return View(); } 视图层不变 age=2) { ViewBag.userName = userName; ViewBag.age = age; return View(); } 视图层

    int?
    @ViewBag.age 未传参效果: 传参效果 文件上传 控制器 [HttpPost] public ActionResult GetImg(HttpPostedFileBase

    1.6K20编辑于 2022-11-30
  • 来自专栏明志德到的IT笔记

    ASP.Net Core 5.0 MVC AppSettings配置文件读取,Startup 类中ConfigureServices 方法、Configure 方法的使用

    ViewBag.sName1 = Configuration["StudentList:0:sName"];//json数组 ViewBag.sName2 = Configuration ["StudentList:1:sName"]; ViewBag.Default = Configuration["Logging:LogLevel:Default"];//json LinkID=397860 *@ @{ }

    ViewBag.Title 的值: @ViewBag.Title

    ViewBag.MyKey的值: @ViewBag.MyKey

    ViewBag.sName1的值: @ViewBag.sName1

    ViewBag.sName2的值: @ViewBag.sName2

    ViewBag.Default的值: @ViewBag.Default

    运行测试效果 Startup 类 ASP.NET Core 应用使用 Startup 类,按照约定命名为 Startup

    1.2K20编辑于 2023-10-21
  • 来自专栏GuZhenYin

    ASP.NET Core中使用IOC三部曲(一.使用ASP.NET Core自带的IOC容器)

    = _testService.GetList(""); ViewBag.guid = _testService.MyProperty; ViewBag.guid11 = testService11.MyProperty; ViewBag.guid2 = _testService2.MyProperty; ViewBag.guid22 = testService22.MyProperty; ViewBag.guid3 = _testService3.MyProperty; return ) {

    @item

    }

    瞬时的:@ViewBag.guid

    瞬时的2:@ViewBag.guid11

    作用域的:@ViewBag.guid2

    作用域的2:@ViewBag.guid22

    全局唯一的:@ViewBag.guid3

    我们运行代码,第一次访问,效果如下: ?

    1.3K70发布于 2018-03-30
  • 来自专栏WD学习记录

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

    eg1: 如果想在一个表单中显示价格,可以用下边的控制器代码: public ActionResult Edit(int id){ ViewBag.Price=10.0; return View(); } 在相应的视图中,使用 ViewBag 中的值来为 TextBox 辅助方法命名,可以实现渲染显示价格的文本框: @Html.TextBox("Price") 将会生成如下的HTML标记 控制器代码: public ActionResult Edit(int id){ ViewBag.Album = new Album{Price=11}; return View(); album.GenreId); return View(album); } 视图中的代码: @Html.TextBox("Title",Model.Title) 辅助方法在查找强类型模型对象之前,会首先查看ViewBag ,如果ViewBag中有Title,那就会接收ViewBag中的Title

    87320发布于 2018-09-03
  • 来自专栏全栈程序员必看

    Pro ASP.NET MVC –第五章 使用Razor「建议收藏」

    publicActionResult DemoExpressions() { ViewBag.ProductCount = 1; ViewBag.ExpressShip = true; ViewBag.ApplyDiscount = false; ViewBag.Supplier = null; return View(product); } 然后,我们创建强类型的视图 <divdata-discount=”@ViewBag.ApplyDiscount“data-express=”@ViewBag.ExpressShip :<inputtype=”checkbox”checked=”@ViewBag.ApplyDiscount“/> Express:<inputtype=”checkbox”checked=”@ViewBag.ExpressShip (ViewBag.ProductCount == 1) { Low stock (@ViewBag.ProductCount) }else{ @ViewBag.ProductCount

    4.1K20编辑于 2022-08-04
  • 来自专栏全栈程序员必看

    解决iframe参数过长无法加载问题小记

    [HttpPost] public ActionResult ShowRangeDataPage(ReportDataListRequest request) { ViewBag.Year = request.Year ; ViewBag.CommentElementValue = request.CommentElementValue; ViewBag.CommentUnitValue = request.CommentUnitValue ; ViewBag.CommentUnitCode = request.CommentUnitCode; ViewBag.CommentUnitType = request.CommentUnitType ; ViewBag.dataType = request.dataType; return View(); } 前端ShowRangeDataPage页面调用post传的参数。 ', CommentUnitType: '@ViewBag.CommentUnitType', dataType: '@ViewBag.dataType' }, success: function

    2.4K30编辑于 2022-09-14
  • 来自专栏GuZhenYin

    MVC5学习系列--Razor视图(一)

    ViewBag,ViewData,ViewDataDictionary,任意强类型.. = "Index"; }

    @ViewBag.Name

    @ViewBag.name

    @ViewBag.age

    @ViewData["name 我们发现,.第一个 ViewBag.Name 被ViewData["name"]给覆盖了,而且我们不管是用ViewBag 还是ViewData赋值,都可以用互相调用对方的属性,很显然,他们都是调用的视图中的 ViewData,ViewBag只不过是提供给我们的两种调用的方式,且不区分大小写,且这两种方式在性能上...好像也没多大区别,我这里就不测了,欢迎大神给结论,好了,废话不多说,我们进入下个环节,通过上面的实例 当然,微软不会这么不智能,有些视图我们不需要母版页,那我们就可以用这个方法返回,代码如下: public ActionResult Index() { ViewBag.Name

    1.8K80发布于 2018-01-04
  • 来自专栏葡萄城控件技术团队

    ASP.NET MVC 5 - 将数据从控制器传递给视图

    您可以把视图模板需要的动态数据 (参数)在控制器中放入到一个ViewBag对象中,然后视图模板可以访问这个对象。 ViewBag是一个动态的对象,这意味着在您没有给ViewBag放置属性时,它没有任何属性,您可以把任何您想放置的对象放入到 ViewBag对象中。 = "Hello " + name; ViewBag.NumTimes = numTimes; return View(); } } } 现在ViewBag对象包含了数据,并将自动传递给视图模板。 @{ ViewBag.Title = "Welcome"; }

    Welcome

      @for (int i = 0; i < ViewBag.NumTimes; i++) { < 控制器将数据装入到ViewBag对象中,通过该对象传递给视图。然后视图为用户生成显示所需的HTML。 ? 在上面的示例中,我们使用了ViewBag对象把数据从控制器传递给了视图。

    7.7K100发布于 2018-01-10
  • 来自专栏全栈程序员必看

    ASP NET MVC OutputCache

    1.OutputCache 简单Demo [OutputCache(Duration = 60)] public ActionResult Index() { ViewBag.date = DateTime.Now.ToString(); return View(); } 输出页面
    @ViewBag.date 效果: 2015/6/10 10:40:08 总结 .带参数的缓存 [OutputCache(Duration = 60, VaryByParam = "id")] public ActionResult Index2(int id) { ViewBag.date = DateTime.Now.ToString(); ViewBag.post = id; return View(); } 当我们访问 http://localhost:2065 = author; this.ViewBag.PostName = postname; return View(); } public ActionResult RemoveBlogCache

    1.5K10编辑于 2022-09-15
  • 来自专栏飞扬的花生

    ASP.MVC当URL跳转时候参数的安全性

    = id; ViewBag.uid = uid; return View(); } ///

    =EnCodeHelper.GetDecryption(id); ViewBag.uid =EnCodeHelper.GetDecryption(uid); return View(); } 视图: @{ ViewBag.Title = "Index"; } <script src="~/Scripts/jquery-1.8.2.min.js id="+"@ViewBag.id"+"&uid="+"@ViewBag.uid"; }); }); </script> @{ ViewBag.Title = "Home "; } <input value="@<em>ViewBag</em>.id" /> <input value="@<em>ViewBag</em>.uid"/>

    Home

    效果: 原来的URL:http://localhost

    1.6K100发布于 2018-01-18
  • 来自专栏kwcode

    MVC 获取路由的 URL 参数值和默认值的集合。

    获取路由中所有的key foreach (string item in RouteData.Values.Keys) { ViewBag.Keys //获取值 foreach (string item in RouteData.Values.Values) { ViewBag.Values += item + "--->"; } //取ID参数值 ViewBag.id = RouteData.Values["id"]

    2.2K60发布于 2018-03-14
  • 来自专栏CSDNToQQCode

    ASP.NETMVC数据库完整CRUD操作示例

    ActionResult Index() { using (UsersDBEntities db = new UsersDBEntities()) { ViewBag.lists " placeholder="请输入编号" readonly/> <input type="text" name="userName" value="@<em>ViewBag</em>.user.userName " placeholder="请输入用户名"/> <input type="text" name="sex" value="@<em>ViewBag</em>.user.sex" placeholder="请输入用户性别 "/> <input type="text" name="age" value="@<em>ViewBag</em>.user.age" placeholder="请输入用户年龄"/> <input type ="text" name="introduce" value="@<em>ViewBag</em>.user.introduce" placeholder="请输入用户简介"/> <input type="submit

    1.7K30编辑于 2023-04-01
  • 来自专栏CSDNToQQCode

    .NET MVC第五章、模型绑定获取表单数据

    age=2) { ViewBag.userName = userName; ViewBag.age = age; return View(); } 视图层  @Html.ActionLink Index", "Test")


    @Html.ActionLink("超链接3", "Index", new { userName = "admin", age = 12 })
    @ViewBag.userName
    @ViewBag.age 效果: 链接1、2直接访问,在url上可以看到,并且age的默认值是2,链接3显示admin与age的12,说明超链接符合预期。 introduce + "
    "; TempData["show"] = info; return Redirect("~/Test/Index"); } 视图层 @{ ViewBag.Title

    97910编辑于 2022-11-30
  • 来自专栏.Net、.Net Core 、Docker

    依赖注入容器-- Autofac

    private static Animals _animals; public IActionResult Index() { ViewBag.Animal 修改Test控制器 public IActionResult Index() { ViewBag.Animal = Cry.voice; = _getTransient.GuidItem(); ViewBag.getScoped = _getScoped.GuidItem(); ViewBag.getSingleton

    Scoped:@ViewBag.getScoped
    Singleton:@ViewBag.getSingleton
    IGuid接口    public

    1.1K40发布于 2019-09-11
  • 来自专栏不做码农的开发者

    【asp.net core 系列】3 视图以及视图与控制器

    也是 Controller类的一个属性,它的声明如下: public dynamic ViewBag { get; } 可以看到这是一个动态类,实际上ViewBag里的数据与ViewData是互通的,换句话说就是 ViewBag是对ViewData的一次封装,两者并没有实际上的区别。 赋值使用: public IActionResult Index() { ViewBag.Name = "小李"; return View(); } 而ViewDataAttribute ViewBag的访问与ViewData类似,只不过ViewBag是动态对象,可以认为它的类型并没有发生改变,继续按照之前的类型进行使用:

    @ViewBag.Name

    对于ViewModel

    @ViewData["Title"]

    @ViewBag.Name

    @Model.Name + @Model.Age 然后重启服务后,刷新页面,会看到类似的内容:

    3.5K10发布于 2020-06-03
  • 领券