C #: у меня проблема с созданием объекта интерфейса реализации - PullRequest
0 голосов
/ 22 ноября 2010
class MySql : IDatabase
{
    IDatabaseConnection con;
    public MySql() {
        this.con = new MySqlConnection();
        this.con.connect();
    }
}

class ScheduleServices
{
    IDatabase mysql;
    public ScheduleServices() {
       **this.mysql = new MySql();**
    }
}

Класс ScheduleServices пытается создать объект MySql, который этот класс реализует интерфейс IDatabase. Ошибка сказала

MySql является «пространством имен», но используется как тип

Как построить MySql как объект?

Ответы [ 3 ]

2 голосов
/ 22 ноября 2010

Ссылка на класс MySQL, по вашему мнению, относится к чему-то другому (одна из using зависимостей ScheduleServices).Используйте полное имя для ссылки на ваш класс MySQL, если это неоднозначно в файле ScheduleServices, переименуйте ваш класс MySQL, чтобы избежать конфликта, или используйте оператор использования псевдонима.

1 голос
/ 22 ноября 2010

Попробуйте изменить имя класса MySql или используйте полное имя (Пространство имен + имя класса) new Namespace.MySql();. Держу пари, что у вас конфликт имен, и это разрешит его.

0 голосов
/ 22 ноября 2010

Если в ваших отчетах об использовании есть ссылка на MySQL, вы должны разрешить ее в своем коде. MySql.MySql (). Компилятор не может самостоятельно устранить неоднозначность.

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