[IronPython] RuntimeType from PythonType in C# code

Alex News anleewxs at gmail.com
Thu Apr 9 19:41:49 CEST 2009


Excellent! Thanks.

On Thu, Apr 9, 2009 at 12:19 PM, Dino Viehland <dinov at microsoft.com> wrote:
> There is an implicit conversion from PythonType -> Type.  So (Type)(PythonType)o will work here.  Alternately you can just strongly type a function in C# as taking a Type and call that from Python and the conversion will happen automatically.
>
>> -----Original Message-----
>> From: users-bounces at lists.ironpython.com [mailto:users-
>> bounces at lists.ironpython.com] On Behalf Of Alex News
>> Sent: Thursday, April 09, 2009 9:14 AM
>> To: users at lists.ironpython.com
>> Subject: [IronPython] RuntimeType from PythonType in C# code
>>
>> I have embedded IronPython 2.01 into my C# application, and am
>> extremely impressed by the ease of integration and the
>> interoperability with the .NET types.  However I am a bit stumped by
>> something that probably is quite simple.
>>
>> 1) In a python script, I import one of my application types.
>> 2) From that script I call a function implemented in C#.  I pass in
>> the type (not an instance of the type)
>> 3) My C# function sees a PythonType.  I would like to get the
>> associated RuntimeType, but can't figure out how to do so.
>>
>> For example (using a system type):
>>
>> python:
>> from System import String
>> myfunction(String)  # calls C# delegate defined below
>>
>> C#:
>> delegate(object o)
>> {
>>   // o is of type PythonType.  I would like to get the associated
>> System.RuntimeType  (in this case System.String)
>> }
>>
>> I've searched the web, but most of the advice seems outdated:
>>
>> PythonType.UnderlyingSystemType is internal, so I can't access it.
>> http://lists.ironpython.com/pipermail/users-ironpython.com/2007-
>> December/006130.html
>>
>> I'm not sure what "Ops" is.  I suspect it is related to the namespace
>> IronPython.Runtime.Operations, but I can't find an equivalent
>> class/function in there (although there is quite a bit there, so I may
>> have missed it).
>> http://lists.ironpython.com/pipermail/users-ironpython.com/2005-
>> May/000668.html
>>
>> Any help would be greatly appreciated.
>>
>> Thanks,
>> Alex
>> _______________________________________________
>> Users mailing list
>> Users at lists.ironpython.com
>> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
>
> _______________________________________________
> Users mailing list
> Users at lists.ironpython.com
> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
>



More information about the Ironpython-users mailing list