ASP.NET и IsNew на уровне страницы - PullRequest
2 голосов
/ 28 апреля 2010

Никогда не видел этого раньше в разработке ASP.NET. Я пытаюсь изменить 40 одностраничных ASP.NET-страниц в стиле code-behind.

Что делает этот код?

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

На странице ASP.NET с одностраничным дизайном в блоке в методе Page_Load.

На странице с выделенным кодом этот код (.IsNew) не распознается. Что мне здесь не хватает? Есть ли страница MSDN на IsNew "страницы"?

обновление Хорошо. Это мой тупой ход дня. В нижней части серверной части был скрыт небольшой метод был защищен bool IsNew ()

см. Комментарии о точке наследования. http://msdn.microsoft.com/en-us/library/015103yb.aspx

Ответы [ 3 ]

2 голосов
/ 28 апреля 2010

Вы выполнили поиск по всем исходным файлам IsNew?

Некоторые возможности
1. Этот метод унаследован от базового класса, если он у вас есть 2. IsNew может быть методом расширения. http://msdn.microsoft.com/en-us/library/bb383977.aspx
3. IsNew является членом класса

1 голос
/ 28 апреля 2010

Это озадачивает, так как класс System.Web.UI.Page определенно не имеет IsNew() метода. Единственный способ получить это, если страница наследуется от базовой страницы или, возможно, если существует метод расширения , расширяющий Page.

Можете ли вы щелкнуть правой кнопкой мыши метод в Visual Studio и найти определение?

1 голос
/ 28 апреля 2010

Если ваш файл с выделенным кодом наследуется от пользовательского класса страницы, как, например, в классе типа PageBase вместо стандартного System.Web.UI.page, IsNew может быть там, и, возможно, ваша страница должна реализовать это. .. ALtneratively, это может быть метод расширения для класса страницы, и вы пропустили ссылку на пространство имен, чтобы включить его ...

НТН.

...