Подтвердить что ты не робот

Visual Studio 2010 - вам не хватает директивы использования или ссылки на сборку?

Когда я добавляю ссылку на мою dll в проекте Visual Studio, я могу ее использовать, но когда я компилирую свой код или пытаюсь запустить его, я получаю , если вам не хватает директивы using или сборки ссылка? _ Ошибка. Я могу подтвердить, что у меня есть правильный оператор using для моего пространства имен, и я могу подтвердить, что dll правильно загружена. Кто-нибудь может понять, что у меня может быть не так?

4b9b3361

Ответ 1

Перейдите к настройкам проекта и убедитесь, что вы не компилируете проект для .net-версии, которая включает в себя текст "профиль клиента".

Ответ 2

У меня просто была проблема точно так, даже если это старый вопрос, я думал, что добавлю свой 2c на то, что исправлено, поскольку ни один из других ответов не помог:

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

Это был просто случай прямого воссоздания злоумышленного проекта, после чего он взял последнюю dll и построил счастливо.

Это казалось несчастным случаем, поскольку никакая конфигурация не изменилась между тем, когда он работал/когда это не было.

Ответ 3

Иногда, ТОЛЬКО РЕЗЕРВУРА РЕШЕНИЯ.

Ответ 4

Местоположение DLL важно.

Если вы добавите ссылку на свой локальный компьютер в DLL, которая находится за пределами вашего решения Visual Studio, она не обязательно будет скопирована в ваши файлы решений (в зависимости от типа решения/проекта).

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

Вы также можете обрабатывать это с помощью инструкций по сборке, но в настоящий момент это может быть за пределами ваших устремлений.

Ответ 5

Скорее всего, ваша dll ссылается на другую dll, которую клиентский проект не ссылается, и ваш код dll выставляет тип или интерфейс из 3-й dll в код клиента.

Если вы опубликуете сообщение exaCt, мы сможем помочь лучше.

Ответ 6

Используете ли вы .net 4.0?

Если да, эта DLL, вероятно, не совместима с .net 4.0

Ответ 7

В моем случае основной проект (WinForm) был настроен Framework Target: FW 4.0 "профиль клиента". Я перехожу на FW 4.0 и отлично работаю!! В первый раз я смотрел в проектах, на которые ссылались, и они были в порядке, но основного проекта нет. Надеюсь, эта помощь. Спасибо.

Ответ 8

В моем случае эта ошибка компиляции прошла после добавления ссылки на Компоненты сборки BCL через контекстное меню "Управление пакетами NuGet" в проблемном проекте.

До: У меня был проект Main (консольное приложение), ссылающийся на проект A (библиотека классов). Проект A имел зависимость от компонентов сборки Microsoft BCL.

После: я начал рефакторинг, где я выделил несколько классов для отдельного проекта New. Это также зависело от A. Но ошибка компиляции возникла в проекте New, как если бы не было ссылки New → A (хотя Visual Studio не выделяла якобы не найденные интерфейсы и классы, перечисленные в списке ошибок компиляции).

Итак, я проверил зависимости проекта A и нашел там компоненты сборки BCL. После добавления в новые зависимости все работало нормально. Самое интересное, что Main сделал не содержать эту зависимость, и она не нуждалась в ней.

Надеюсь, что это поможет.

Ответ 9

Вам просто нужно снова проверить пространство имен этого файла класса... он будет работать