Управляемое пространство имен C ++ недоступно в C # .Net во время компиляции - PullRequest
1 голос
/ 28 декабря 2010

У меня есть 4 проекта в моем решении Visual Studio 2010. Один из проектов управляется C ++ dll. Я добавил ссылку на этот управляемый проект C ++ в остальные три проекта C # .Net. Когда я попытался скомпилировать это, я получил ошибку в Использование оператора пространства имен в коде C #.

Управляемый код C ++

namespace A <---- Defined in managed C++ as well as C#
{
    namespace B <---- Only defined in managed C++
    {
        public ref class MyClass
        {
        }
    }
}

Теперь я хочу использовать MyClass в моем C #, так C #. Чистый код

using A.B;  <-------- Here it gave error for B;

Внешнее пространство имен, т. Е. A определяется / используется в C #, а также в управляемом проекте C ++. Но внутреннее пространство имен, т. Е. B, определено исключительно в управляемом C ++. Я не могу получить доступ к внутреннему пространству имен в приложении C #.

Есть решение?

Спасибо, Omky

Ответы [ 3 ]

1 голос
/ 28 декабря 2010

Всегда большая ошибка, чтобы задать вопрос об ошибке без цитирования сообщения об ошибке точный . Но у того, кого вы обычно видите, есть эта фраза:

Вам не хватает ссылки на сборку?

1 голос
/ 28 декабря 2010
0 голосов
/ 29 декабря 2010

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

Извините ....Я понял свою ошибку.Спасибо всем за помощь.

...