Как IronPython может получить доступ к общедоступному статическому свойству, определенному в C #? - PullRequest
2 голосов
/ 15 июня 2011

Рассмотрим код C #:

public static class Graphics {
  public static Color white = new Color(255, 255, 255);
}

Я могу скомпилировать и импортировать это из IronPython:

>>> import clr
>>> clr.AddReference("Graphics")
>>> import Graphics
>>> Graphics.white
<Color 255,255,255>

Но я не могу:

>>> import clr
>>> clr.AddReference("Graphics")
>>> from Graphics import *
>>> white
Traceback (most recent call last):
  File "/home/dblank/Calico/src/engine.py", line 159, in execute
    source.Execute(self.manager.scope)
  File "<string>", line 1, in <module>
<type 'exceptions.NameError'>: name 'white' is not defined

Что я могу сделать, чтобы сделать белый доступным?

1 Ответ

2 голосов
/ 16 июня 2011

Если вы пометите поле как доступное только для чтения, мы разрешим его импорт через импорт *, так как оно будет добавлено в Graphics. all .

...