Чтобы убедиться, что вы перестраиваете свой проект, я бы удалил выходной каталог (обычно эта папка называется Debug или Release и содержит файлы exe и pdb) и посмотрел, имеет ли это значение.Может быть, вы думаете, что перестраиваете, но это не так.
Кроме того, когда вы запускаете свой проект, убедитесь, что вы используете ту же конфигурацию, что и вы.Если вы создаете Release, но запускаете Debug, сгенерированный код не будет совпадать, даже если файлы обновлены.
Перейти к выходному пути можно, перейдя на страницу свойств проекта, вкладку Build инажав кнопку Обзор пути вывода:
Помните, что если вы явно не определили интерфейс, это не означает, что ваша программа не использует интерфейсы.Код, который вы используете, может уже реализовывать интерфейсы с кодом по умолчанию, который должен быть переопределен в вашем коде.
Как и другие предлагали, я бы искал строку NotImplementedException
, просто чтобыубедитесь, что вы случайно не генерируете это исключение где-то в своем коде.
Кроме того, я бы изменил код, чтобы перехватить исключение, чтобы вы могли подняться в стек и определить, куда его выкидывает:
for (int i = 1; i <= 4; i++)
{
try
{
MyDevice.SetGpo(i, false);
}
catch (NotImplementedException ex)
{
Console.WriteLine(ex.Message); // set your breakpoint here
throw ex;
}
}