标签: page-lifecycle

生成客户端ID的页面生命周期是什么?

我正在以编程方式将Webcontrols添加到用户控件中我还添加了一个javascript事件,将controlID作为参数传递但是clientID是我指定的那个,它不包含asp.net生成的那个

   var txt = new TextBox();
   txt.ID = "MyID"+Number;

   chkBox.Attributes.Add("onClick", "EnableTxtBox('" +txt.ClientID + "');");
Run Code Online (Sandbox Code Playgroud)

我可以通过添加父控件ID来解决此问题

   chkBox.Attributes.Add("onClick", "EnableTxtBox('" + this.ClientID+"_"+txt.ClientID + "');");
Run Code Online (Sandbox Code Playgroud)

生成客户端ID的页面生命周期是什么?

.net c# asp.net page-lifecycle

5
推荐指数
1
解决办法
1189
查看次数

System.web.ui.page的替代方案

我有一个ASP.Net应用程序,我注意到通过使用分析器,在我的页面运行之前发生了大量的处理.在我的应用程序中,我们没有使用viewstate,asp.Net会话,我们可能不需要使用asp.net页面生命周期所带来的大部分开销.还有其他一些我可以轻易继承的课程,它会删除所有的Asp.Net内容,让我自己处理这个页面吗?

我听说ASP.Net MVC可以大大减少页面加载,因为它不使用旧的asp.net生命周期,并且处理页面的方式不同.有没有一种简单的方法,可能只需让我的网页继承其他类来利用这样的东西.如果可能的话,我想在ASP.Net 2.0中使用一个解决方案.

asp.net page-lifecycle

5
推荐指数
1
解决办法
2989
查看次数

按钮单击方法在页面加载后运行,这意味着页面不会更新,我该如何解决?

我有一个按钮,用于更新数据库中的值.此值用于确定在页面上绘制的内容.但是,由于页面生命周期,页面在执行按钮单击方法之前会重绘,这意味着在重新重新加载页面之前不会反映任何更改.

什么是最好的解决方案?

澄清:

如果数据库值为1,页面有一段文字,上面写着"我喜欢猫"

按下'我讨厌猫'按钮,将数据库值设置为0

页面重新加载,但仍然说"我喜欢猫"

处理按钮单击事件,数据库值变为0

如果页面被刷新/重新加载,它现在正确地说"我讨厌猫"

它应该在单击按钮时更新.

asp.net page-lifecycle

5
推荐指数
2
解决办法
1万
查看次数

在"卸载"方法中关闭连接

我继承了一个Web框架,以前的开发人员在页面生命周期的init/unload方法中打开并关闭了他的数据库连接.基本上构造函数是这样的(简化以证明这一点);

public class BasePage
{
   protected DBConnection _conn;

   public BasePage()
   {
      Init += StartConnection;
      Unload += EndConnection;
   }

   private void StartConnection(object sender, EventArgs e)
   {
      _conn = new DBConnection(Application["connectionstring"].ToString());   
   }

   private void EndConnection(object sender, EventArgs e)
   {
      if (_conn == null)
         return;

      if (_conn.Connection.State == ConnectionState.Open)
      {
     _conn.Close();
         _conn.Dispose();
      }
   }
}
Run Code Online (Sandbox Code Playgroud)

自从我来到这里以来,发展一直很快,所以我从未停下来考虑它.最近,访问已经开始,我们已经开始获得可怕的"Timeout过期.在从池中获取连接之前已经过了超时时间......"错误.

我目前正在查看其余的代码,寻找可能的连接泄漏,但上面的代码从来没有完全适合我,我想消除它作为潜在的罪魁祸首.那么问题;

即使在发生异常的情况下,我是否可以依赖"卸载"方法始终被调用?或者任何人都可以使用上述模式看到任何其他潜在问题,这将使其成为这些连接泄漏的主要嫌疑人?

干杯,

米奇

编辑:在调试中,即使存在异常,也始终会调用unload方法.我真的只需要知道不会调用此方法的任何情况,所以我可以弄清楚这是否需要首先进行重构.

编辑:感谢那些迄今为止做出回应的人,但请不要再提出关于IDisposable类或"使用"或"捕获/最终"模式的建议 - 这不是我的问题!我的问题是具体是一个页面是否可以运行其"Init"事件但是然后无法运行是"卸载"事件,以及为什么会发生这种情况.

c# asp.net database-connection connection-pooling page-lifecycle

5
推荐指数
1
解决办法
1620
查看次数

Asp.Net - 页面刷新(F5)不恢复TextBox的初始值

这是简单的代码:

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        txt.Text = "Original";
    }
}
Run Code Online (Sandbox Code Playgroud)
  1. 第一次加载.文本框状态为"原始".

  2. 手动,将值更改为"不原始".

  3. 按F5.这条线:

    txt.Text ="原创";

执行但输入值仍为"非原始"

但是,当我点击进入地址栏时.该值更改为"原始".

更多starnge是当地址在末尾包含'#'时(使用jquery click ...)

然后,即使我点击了地址栏,价值 仍为"非原创"

asp.net viewstate postback page-lifecycle

4
推荐指数
1
解决办法
8617
查看次数

在ASP.Net MVC v1下,是否调用了Page_Load?

愚蠢周一早上基本/菜鸟问题......

Page_Load通常被称为ASP.Net MVC应用程序吗?

我们只有一个页面,Default.aspx.cs - 它似乎只是被调用/而不是任何子路径,所以我不认为它通常被称为...

感谢回复 - 澄清一下,我想在Page_Load中做的是安全检查,即用户登录/授权页面......听起来我应该做一个自定义属性并把它放在Controller基类上代替.

谢谢,克里斯

.net asp.net-mvc page-lifecycle

4
推荐指数
1
解决办法
810
查看次数

ASP.NET/Java - 脚本注册/重定向问题

我的页面上有一个提交按钮(服务器端按钮).

这是我点击事件的代码:

protected void SubmitButton_Click(object sender, EventArgs e)
{
    db.SaveSomething();
    Page.ClientScript.RegisterStartupScript("someScriptWhichReliesOnServerData");
    Response.Redirect("SomeOtherPage.aspx");
}
Run Code Online (Sandbox Code Playgroud)

现在,问题是,我使用注册JavaScript Page.ClientScript.RegisterStartupScript,但这不会有效,因为页面没有在回发时重新呈现(这是脚本将被执行的地方),因为相反,Response.Redirect会发生.

我能想到的唯一解决方案是让页面重定向到"意识到"我试图执行一些JavaScript,无论是QueryString,HttpContext.Current.Items还是(gulp)Session.

  • QueryString - 不是一个选项,因为它是我试图执行的JavaScript.
  • HttpContext.Current.Items - 也不是一个选项,因为我正在做一个Response.Redirect(它丢失了请求级数据,我也不能使用Server.Transfer因为这对URL重写不好).
  • 会议 - 当然,但不理想.

还有其他想法/建议吗?

编辑澄清:

JavaScript即时执行是对Facebook客户端API的调用,以发布到用户的墙上.它必须在客户端完成.我传递给脚本的东西,如"标题","消息","动作链接"等.基本上是一堆JSON.但关键是这个数据是在回发时创建的,所以我不能在客户端点击时执行这个功能.

所以我想要完成的是提交按钮点击,执行一些JavaScript并进行重定向(不必按顺序,只需要发生).

javascript asp.net redirect page-lifecycle registerstartupscript

4
推荐指数
1
解决办法
1876
查看次数

像.net的java/tomcat/JSP的"Application_Start"和"Begin_Request"这样的事件?

有没有办法在Java/Tomcat/JSP Web项目中附加到asp.net的"Application_Start"和"Begin_Request"等事件?我真的不想使用JSF或额外的框架(Spring,Struts).我不希望在每页的基础上使用"jspInit"这样的东西,全局事件处理程序是目标.

如果我陷入.net的做事方式,关键是要有一个初始化IoC容器(Application_Start)的中心位置,并实现'每个请求一个数据库事务'工作流程(Begin_Request).

谢谢.

java jsp tomcat servlets page-lifecycle

4
推荐指数
1
解决办法
1020
查看次数

什么是ASP.NET代码块,例如,在页面生命周期中执行<%=%>?

当我对整个页面进行数据绑定时,我会做这样的事情:

Blah blah ......

<%# SomeProperty == "GoodBye" ? "See you later" : "Hello" %>
Run Code Online (Sandbox Code Playgroud)

这是美丽的.但是,我经常不会对整个页面使用数据绑定,而是使用"clasic"ASP.NET方式编写内容.例如,在后面的代码我会有类似的东西:

lblSomeMessage.Text = SomeProperty == "GoodBye" ? "See you later" : "Hello";
Run Code Online (Sandbox Code Playgroud)

然后.aspx会有

<asp:label runat="server" id="lblSomeMessage"/>
Run Code Online (Sandbox Code Playgroud)

但我想这样做 ......之类的.我想做的是不使用数据绑定语法,而是使用代码块:

<%= SomeProperty == "GoodBye" ? "See you later" : "Hello" %>
^^^^
Run Code Online (Sandbox Code Playgroud)

Noe输出标签语法.现在,问题是,这个标签何时才会被评估?假设在OnPreRender事件之前我没有设置SomeProperty属性.这太晚了吗?在我的测试中我实际上是这样做的:

<%= SomeProperty == "GoodBye" ? + new System.Diagnostics.StackTrace().ToString() : "OH NO!" %>
Run Code Online (Sandbox Code Playgroud)

并根据stacktrace:

在System.Web.UI.HtmlControls.HtmlForm.RenderChildren(HtmlTextWriter writer)的System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer,ICollection children)中的ASP.webform1_aspx .__ Renderform1(HtmlTextWriter __w,Control parameterContainer)...

它发生在渲染过程中,这是完美的.但这有保证吗?这条规则有什么问题吗?

asp.net page-lifecycle

4
推荐指数
1
解决办法
1808
查看次数

离开/更改页面时的 Xamarin.forms 事件

我正在寻找类似函数的东西

protected override void OnDisappearing()
{
}
Run Code Online (Sandbox Code Playgroud)

在 Xamarin 表单中。问题是,即使我关闭手机显示屏,也会调用此功能。我正在寻找一种仅在页面更改时响应事件的功能 - 例如,菜单中的用户单击正在访问的页面以外的页面。

谢谢你的建议

c# events page-lifecycle xamarin xamarin.forms

4
推荐指数
1
解决办法
4413
查看次数