5

我有如下 webform 代码。我需要在 mvc 中有这个 .. 在 asp.net mvc 的 pageload 事件中使用什么来初始化 objext

  protected void Page_Load(object sender, EventArgs e)
    {
        Control ctrl = (Control)Session["ctrl"];
        PrintHelper.PrintWebControl(ctrl);
    }
4

4 回答 4

3

ASP.NET MVC 不适用于 ASP 经典之类的事件;没有“页面加载事件”。您的控制器方法对应于发送到服务器的请求。您需要在 HTML 中构建等效控件,然后使用表单将数据 HTTP POST 到服务器,由控制器方法处理。

于 2013-08-02T16:01:12.807 回答
1

MVC 没有页面加载事件。一切都在动作中完成(负责处理请求的控制器类的指定方法)。

或者,您可以在视图中执行代码(类似于页面加载)。但是 MVC 本身并不像 ASP 站点那样编写。

模拟您正在做的事情的最佳方法是将定义打印控件的模型传递给视图,然后创建一个您可以在视图中呈现的显示模板(而不是调用 print)。

于 2013-08-02T16:01:19.320 回答
0

与 ASP.NET MVC 中的事件或页面生命周期最接近的是过滤。看看这篇 MSDN 文章http://msdn.microsoft.com/en-us/library/gg416513(v=vs.98).aspx

于 2013-08-02T16:06:01.390 回答
0

所有初始化代码都应该放在控制器的构造函数或动作过滤器中。顺便说一句,asp.net mvc 也没有控件

于 2013-08-02T16:05:09.970 回答