Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Как установить пространство имен для импортированной dll IronPython?

Автор вопроса: Wayne WernerОтветов: 1

У меня есть .NET dll, который я импортирую, и, кажется, он работает нормально, за исключением случаев, когда он запускается внутри программы VB или .NET, он просматривает пространство имен, в котором он работает, чтобы определить, авторизовано ли пространство имен. использовать эту конкретную функциональность.

Так, например, если бы я писал приложение на C#, оно могло бы выглядеть примерно так:

using The.New.Library;

namespace Knights.Of.The.Round.Table {
     public class Knight{
          // Some code
          private void fight(){
              The.New.Library.DoSomething();
          }
     }
}

И это будет работать нормально, потому что пространство имен Knights.* авторизовано для использования DoSomething

Можно ли сказать dll, когда я импортирую ее в IronPython, что пространство имен на самом деле Knights.*, а не то, что оно есть на самом деле, или даже если бы я мог просто использовать правильную структуру папок, чтобы он нашел "правильное" пространство имен, это также могло бы Работа.

Спасибо!

namespacesironpython

Ответы

Ответ 1 · рейтинг 2 · Jeff Hardy

Я думаю, что ваш единственный вариант - создать оболочку С#, которая находится в правильном пространстве имен и просто пересылает в библиотеку.

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

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы