代码之家  ›  专栏  ›  技术社区  ›  netseng

aspx文件中的服务器端代码

  •  3
  • netseng  · 技术社区  · 16 年前

    我想问一下,控制执行生命周期的哪个阶段是“ aspx文件中写入的服务器端代码” 被处决?

    是在SaveState之前还是之后,我声称它处于渲染阶段,这是真的吗??

    在aspx文件中,如果我的代码写为

    “<%”

    if(true)
    {
    rdlistAnswers.Items.Clear();
    foreach (string item in myCollection)
    {
        i.Value = item;
        i.Text = item;
        rdlistAnswers.Items.Add(i);
    }
    "%>"
    <asp:RadioButtonList ID="rdlistAnswers" runat="server"</asp:RadioButtonList>
    

    对所做的更改将被呈现,但不会被保存。 但是当将标签写为

    <asp:RadioButtonList ID="rdlistAnswers" runat="server" OnPreRender="loadMe"</asp:RadioButtonList>
    

    -由于loadMe是aspx.cs文件中的一个事件处理程序方法,它与上面的代码做了同样的事情——渲染和保存更改,所以当我在PreRender阶段进行更改时,状态会被保存,但当我通过将逻辑放入aspx文件中进行更改时状态不会被保存,这意味着——至少正如我所说的——放置在aspx文件中的服务器端代码会在渲染阶段执行,你同意我的观点吗???

    1 回复  |  直到 16 年前
        1
  •  5
  •   Community CDub    8 年前

    直接写入aspx文件的代码将在 Render Control 在ASP中。NET页面生命周期 .

    我测试过了 precompiling an aspx file using Reflector to look at the decompiled code .

    推荐文章