Полиморфизм нарушается при изменении проекта веб-сайта на проект веб-приложения - PullRequest
0 голосов
/ 24 октября 2010

Привет,

Я только что преобразовал проект веб-сайта ASP.NET в Проект веб-приложения в VS 2010. После запуска приложения, похоже, что мой классовый полиморфизм сломался.Я понятия не имею, почему это может произойти.

Так что в следующем коде, когда я вызываю base.OnLoad (e), я получаю ошибки в базовом классе, потому что переменная myString равна нулю.Фактически все переменные для базового класса являются нулевыми.Я могу сделать

base.myString = this.myString;

до

base.OnLoad (e);

но мне это не кажется полиморфным.


Код:

public partial class FormA : Web.ClassB 
{
    protected override void OnLoad(EventArgs e)
    {
        myString = "TEST";

        base.OnLoad(e);
    }
}

public class ClassB 
{
    protected String myString;

    protected override void OnLoad(EventArgs e)
    {
        // Class C has a virtual OnLoad method (not shown here)
    }
}

1 Ответ

1 голос
/ 24 октября 2010

Похоже, что ClassB находится в пространстве имен или является членом другого класса. Есть ли у вас правильные пространства имен / область видимости, потому что я столкнулся с такими проблемами, как преобразование веб-сайтов в веб-приложения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...