IronPython имеет новую функцию в 2.6 для создания обычных классов .NET с использованием механизма определения классов Python. Новая функция активируется путем переопределения clrtype в метаклассе. Затем вы можете объявить класс с помощью множества декораторов, и метакласс создаст новый тип .NET. В качестве примера у нас есть набор метаклассов, которые можно использовать (или настраивать) на сайте IronPython CodePlex для 2.6.1 версии .
Я не пробовал, в частности, с WCF, но он работает в других случаях, когда вам нужно использовать статический тип. В некоторых случаях это не будет работать, особенно если фреймворк должен выполнять Type.GetType (typeName).