2

以前在 ASP.NET 开发中从未见过这种情况。我正在尝试将 40 个单页 ASP.NET 页面重构为代码隐藏样式。

这段代码有什么作用?

// Validate required parameters (if "new", then nothing is required)
if (!this.IsNew())
{
  if (string.IsNullOrEmpty(_billId))
  {
    responseErrorNo = 4;
    Utils.SendError(respErrNum);
  }
}

其在Page_Load 方法块中的单页设计ASP.NET 页面中。

在代码隐藏页面上,此代码 (.IsNew) 无法识别。我在这里想念什么?“页面”的 IsNew 上是否有 MSDN 页面?

更新 好的。这是我今天的愚蠢举动。有一个小方法隐藏在服务器端的底部被保护 bool IsNew()

请参阅有关继承点的评论。 http://msdn.microsoft.com/en-us/library/015103yb.aspx

4

3 回答 3

2

您是否搜索过 IsNew 的所有源文件?

一些可能性
1. 这是从基类继承的方法,如果你当然有
2. IsNew 可能是扩展方法。http://msdn.microsoft.com/en-us/library/bb383977.aspx
3. IsNew 是该类的成员

于 2010-04-28T19:03:28.320 回答
1

如果您的代码隐藏文件继承自自定义页面类,例如在 PageBase 类而不是标准 System.Web.UI.page 中,则 IsNew 可能在其中,并且您的页面可能需要实现它...... ,它可能是页面类的扩展方法,并且您缺少名称空间引用来包含它...

HTH。

于 2010-04-28T19:04:13.323 回答
1

这令人费解,因为System.Web.UI.Page该类肯定没有IsNew()方法。你会得到的唯一方法是如果页面是从一个基本页面继承的,或者如果它有一个扩展页面的扩展方法

能否在 Visual Studio 中右键单击该方法并找到定义?

于 2010-04-28T19:07:23.460 回答