NandaNurdin Ответов: 2

C# не удалось найти имя типа или пространства имен (отсутствует ли директива using или ссылка на сборку? )


Я пытаюсь это назвать


private void FindLicensePlate(
           VectorOfVectorOfPoint contours, int[,] hierachy, int idx, IInputArray gray, IInputArray canny,
           List<IInputOutputArray> licensePlateImagesList, List<IInputOutputArray> filteredLicensePlateImagesList, List<RotatedRect> detectedLicensePlateRegionList,
           List<String> licenses)




к моей пуговице

private void button2_Click(object sender, EventArgs e)
        {

           
        }


но мой VS2019 всегда дает мне это предупреждение..

не могли бы вы сказать мне, в чем проблема?

Что я уже пробовал:

я попытался дать новое ключевое слово

FindLicensePlate fd = новая FindLicensePlate();

в моем методе кнопки, но он потерпел неудачу

2 Ответов

Рейтинг:
20

OriginalGriff

Проблема в том, что он не может найти класс - он не находится в том же пространстве имен, что и ваш текущий код.
Это может быть другой проект в текущем решении, внешняя библиотека DLL или просто другое пространство имен в другом файле текущего проекта.

Начните с наведения курсора мыши на ошибку и откройте появившийся выпадающий список. Если у него есть опция "включить", нажмите на нее, и он должен ее исправить.
Если это не так, вам нужно выяснить, где находится этот класс, и добавить ссылку на uit либо через проект в том же решении, либо через DLL, а затем добавить соответствующий класс. using строка в верхней части всех файлов, которые ссылаются на нее.


Рейтинг:
1

Sandeep Mewara

Общие причины этого:
1. Возможно, вы не добавили требуемую директиву using
2. Возможно, вы забыли сослаться (-reference) на сборку, содержащую тип
3. возможно, возникла проблема со сборкой, на которую вы пытаетесь ссылаться

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

Другая возможная причина:
1. использовали ли вы переменную или какой-либо другой элемент языка, где ожидался тип?
2. ссылались ли вы на сборку, построенную на более высокой версии фреймворка, чем целевой фреймворк программы?
3. Вы использовать используя псевдоним директивы без полного указания имени типа?
4. Если вы получаете эту ошибку в коде, который ранее работал, сначала найдите отсутствующие или неразрешенные ссылки в обозревателе решений. Например - вам нужно переустановить пакет NuGet?

Ссылка: Ошибка компилятора CS0246 | Microsoft Docs[^]