Page.IsPostBack或IsPostBack

时间:2011-05-11 17:24:28

标签: asp.net

我只是想知道这两个陈述之间是否有任何性能差异

Page.IsPostBack

IsPostBack

5 个答案:

答案 0 :(得分:5)

IL级别会有所不同(第一种情况下是额外的getter调用),但它可以忽略不计,你根本不应该打扰。

答案 1 :(得分:3)

没有实际差异。 Page属性仅公开对this的同一实例的引用。

答案 2 :(得分:2)

两个陈述的执行之间的差异很小。

IsPostBack属性属于Page类。使用你的第二个'IsPostBack'语句是最有意义的。

Page属性实际上来自Control类,Page类最终继承。解析Page属性可能需要几纳秒。

答案 3 :(得分:1)

不是真的。这将是次要的。你不应该担心这个。

答案 4 :(得分:0)

使用IsPostBack。

Control类公开了一个Page属性,该属性当然是指包含页面。这对儿童控制有一定意义。 ASP.NET Page类是Control的后代,因此有一个引用自身的Page属性

如果您知道有一个Page实例,而不是一般的控件,则没有充分的理由使用Page属性。它是噪音,使代码混乱。

在页面的代码隐藏中,“this”指的是Page对象。与.NET中的任何其他类一样,IsPostback与this.IsPostback的意思相同。只要对当前类的任何其他属性做你想做的事。

IsPostBack的速度稍快,与您在所有其他类中的操作一致。 Page.IsPostBack意味着有魔力在继续。