Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/318.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将属性类应用于继承C#基类的Python类_C#_Python_Attributes_Ironpython - Fatal编程技术网

将属性类应用于继承C#基类的Python类

将属性类应用于继承C#基类的Python类,c#,python,attributes,ironpython,C#,Python,Attributes,Ironpython,我有一个C#的基类,就是这样 Class A { public ClassA() { } ..... } 在python中,我继承了这个基类 import clr clr.AddReferenceToFile("MyClass.dll") from MyNamespace import ClassA class MySubclass(ClassA): def _init_(self): print

我有一个C#的基类,就是这样

   Class A
   {
     public ClassA()
     { 

     }

     .....
   }
在python中,我继承了这个基类

import clr
clr.AddReferenceToFile("MyClass.dll")
from MyNamespace import ClassA    

class MySubclass(ClassA):
    def _init_(self):
        print "I'm in a subclass in python"
我在C中还有一个名为
MyAttrib(“Value”)

稍后在我的C#代码中,我检查从
ClassA
派生的任何类是否应用了
MyAttrib
属性,这在Python类中是失败的

是否有方法执行以下任一操作:

  • 在Python中将attrib类应用于派生类
  • 在实例化对象时以某种方式在Python中设置AttributeValue
  • 另一种方法,做我想做的事情

  • 我正在将IronPython与Visual studio的插件一起使用。

    我认为没有简单的方法可以做到这一点。使用一个定义了必要属性和子类的C#存根类肯定更容易

    但是,如果您确实需要在python中定义这样的类,那么可以使用变通方法(如图所示)

    基本上,您可以(在内存中)编译一段C代码,然后在IronPython中导入。如果这是一段C#代码,您可以添加属性,从而解决您的问题

    这当然是非常复杂的,因为您基本上是将一种语言嵌入到另一种语言中,形成这样的链:
    C#