[IronPython] Trouble calling a method on a .NET object
Orian, Helmut
helmut.orian at schema.de
Thu Jun 12 09:54:58 CEST 2008
hi again,
this was just a repro. I can not change the visibility of the "Concrete"
class. The interface
and the "Base" class are the public API of this assembly. I will file a
bug on codeplex.
Thanks and keep up the great work,
Helmut
________________________________
Von: users-bounces at lists.ironpython.com
[mailto:users-bounces at lists.ironpython.com] Im Auftrag von Curt
Hagenlocher
Gesendet: Mittwoch, 11. Juni 2008 18:35
An: Discussion of IronPython
Betreff: Re: [IronPython] Trouble calling a method on a .NET object
Your code works as expected if you make the "Concrete" class public
instead of internal. Please file this as an issue on CodePlex at
http://www.codeplex.com/IronPython
On Wed, Jun 11, 2008 at 6:09 AM, Orian, Helmut <helmut.orian at schema.de>
wrote:
I'm having trouble calling a method on one of my .NET objects.
if you compile the following repro into a "test.dll":
namespace Test {
public interface ISomeInterface {
string Greet();
}
public abstract class Base {}
public static class SomeFactory {
public static object Get() {
return new Concrete();
}
}
internal class Concrete : Base, ISomeInterface {
public string Greet() {
return "Hello world!";
}
}
}
and try to use them:
>>> import clr
>>> clr.AddReference("test")
>>> from Test import *
>>> o = SomeFactory.Get()
>>> print("Greet" in dir(o))
True
>>> print(o.Greet())
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: expected ISomeInterface, got Base
To me it looks like a bug regarding collection of polymorphic
information on .NET types;
or am I missing something?
Thanks,
Helmut
------------------------------------------------------------------------
---
An- und Abmeldung zur SCHEMA Mailingliste unter
http://www.schema.de/mail
------------------------------------------------------------------------
---
_______________________________________________
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