Док LoadFrom
я есть файл .cs, как
namespace SomeNamepace
{
public struct SomeStruct
{
....
}
public static class SomeClass
{
....
}
До сих пор я использую его с PythonNET, как
import clr
clr.AddReference('c:\\Test\Module.dll')
from SomeNamepace import SomeClass, SomeStruct
SomeClass.SomeMethod(...)
Теперь моя проблема в том, что мне нужно работать с dll с одинаковыми именами и без номера версии, поэтому PythonNET не будет видеть их как две разные dll, но как одинаковые. Даже если я импортирую их, используя полный путь с AddReference.
Теперь я хотел бы использовать их явно, как указано здесь:
Python для .NET: использование одной сборки .NET в нескольких версиях
любить
lib = clr.AddReference('c:\\Test\Module.dll')
Я перепробовал много вещей, чтобы создать экземплярSomeClass
любить
lib.SomeNamespace.SomeClass()
или же
import System
System.Activator.CreateInstance(lib.GetType('SomeNamespace.SomeClass'))
или используя методыInitialize
или жеCreateInstance
или как указано в ссылке ниже
from System import Type
type1 = lib.GetType('SomeNamespace.SomeClass')
constructor1 = type1.GetConstructor(Type.EmptyTypes)
В конце концов все не удалось, что-то не найдено, не имеет метода и т. Д.
Какой будет правильный синтаксис для этого?