mvc 3(可能更早)页面上的ViewData没有被替换它的值
本文关键字:ViewData 替换 mvc | 更新日期: 2023-09-27 18:17:06
在这个解决方案中,我确实有一个项目是这样做的。
这个项目是通过复制并重命名它来启动的。
这是在控制器中:
public ActionResult Index(User user)
{
ViewData["debug"] = "hi ya!";
return View();
}
这是页面索引。(这不是cshtml):
<%@ Register Assembly="T30" TagPrefix="a" Namespace="Prj.T30.Html" %>
<%@ Page Language="C#" AutoEventWireup="true" MasterPageFile="~/template/MVC.master" Title="Material Moves" %>
<asp:Content ID="Content1" ContentPlaceHolderID="body" Runat="Server">
<div>
<input type="text" value="" id="Text1" />
<br />
ViewData["debug"]
</div>
</asp:Content>
浏览器中的页面是文字
"视讯系统"("调试")
为什么这不是我应该期待的?
"你好丫!"
感谢您的时间、思念和祝福。
感谢@stuartd的帮助。
对于@指令,在Inherits属性中加载ViewPage类:
<%@ Page Language="C#" AutoEventWireup="true" Inherits="System.Web.Mvc.ViewPage" MasterPageFile="~/template/MVC.master" Title="really moving stuff man" %>
页面内容:
<% =ViewData["debug"] %>
。
<%@ Register Assembly="T30" TagPrefix="a" Namespace="Prj.T30.Html" %>
<%@ Page Language="C#" AutoEventWireup="true"
MasterPageFile="~/template/MVC.master" Title="Material Moves" %>
<asp:Content ID="Content1" ContentPlaceHolderID="body" Runat="Server">
<div>
<input type="text" value="" id="Text1" />
<br />
@string vData= ViewData["debug"];
@vData;
</div>
</asp:Content>