[Ironruby-core] Handling C# lower case namespaces

Brad Wilson dotnetguy at gmail.com
Mon Dec 8 18:01:07 EST 2008


Welcome to the "wonderful" world of Fusion.
If you use Assembly.LoadFrom, then you can only use the assembly reference
itself to get the types. The canonical names don't match assemblies loaded
using LoadFrom. To use Assembly.Load, it has to be in one of the approved
search paths (which, by default, is the path of the launching executable
only, plus the GAC of course).

We went through an almost excruciating amount of pain with assembly load
paths and such to make all this work correctly in xUnit.net.

--
Brad    http://bradwilson.typepad.com/


On Mon, Dec 8, 2008 at 12:33 PM, Aaron Feng <aaron.feng at gmail.com> wrote:

> Ok,  I got Assembly.Load and Type.get_type both to work with my own DLL.
> The actual DLL have to live where ir.exe lives.  Is there a way for it to
> look in the directory of the ruby file?  Like the way require statement
> work.
>
> Aaron
>
>
>
> On Mon, Dec 8, 2008 at 2:11 PM, Tomas Matousek <
> Tomas.Matousek at microsoft.com> wrote:
>
>>  Can you load the assembly and get the type explicitly?
>>
>>
>>
>> require 'mscorlib'
>>
>> System::Reflection::Assembly.Load("IronNails.Library, Version=1.0.0.0,
>> Culture=neutral, PublicKeyToken=null").GetType(
>> 'IronNails.View.XamlProxy')
>>
>>
>>
>> Tomas
>>
>>
>>
>> *From:* ironruby-core-bounces at rubyforge.org [mailto:
>> ironruby-core-bounces at rubyforge.org] *On Behalf Of *Ivan Porto Carrero
>> *Sent:* Monday, December 08, 2008 9:46 AM
>> *To:* ironruby-core at rubyforge.org
>> *Subject:* Re: [Ironruby-core] Handling C# lower case namespaces
>>
>>
>>
>> I get the same behavior.
>> I can load types from the CLR but not from my own assembly.
>>
>> I copied my assembly into the folder that contains ir.exe
>>
>> >>> require 'mscorlib'
>> => true
>> >>> require 'IronNails.Library, Version=1.0.0.0, Culture=neutral,
>> PublicKeyToken=null'
>> => true
>> >>> IronNails::View::XamlProxy
>> => IronNails::View::XamlProxy
>> >>> System::Type.get_type 'IronNails.View.XamlProxy'
>> => nil
>> >>> System::Type.get_type 'System.String'
>> => #<System::RuntimeType:0x000005c>
>> >>> IronNails::View::XamlProxy.to_clr_type
>> => #<System::RuntimeType:0x000005e>
>>
>>
>>
>>  On Mon, Dec 8, 2008 at 5:54 PM, Aaron Feng <aaron.feng at gmail.com> wrote:
>>
>> Tomas,
>>
>> I tried it again.  I couldn't get the following to work with my own DLL
>> even If I capitalize the namespace (It does work fine with build in types
>> like System.String):
>>
>> > System::Type.get_type("Abc.Hi, Version=1.0.0.0, Culture=neutral,
>> PublicKeyToken=null")
>>
>> Do I have any other options?
>>
>> Thanks,
>>
>> Aaron
>>
>> _______________________________________________
>> Ironruby-core mailing list
>> Ironruby-core at rubyforge.org
>> http://rubyforge.org/mailman/listinfo/ironruby-core
>>
>>
>>
>> _______________________________________________
>> Ironruby-core mailing list
>> Ironruby-core at rubyforge.org
>> http://rubyforge.org/mailman/listinfo/ironruby-core
>>
>>
>
> _______________________________________________
> Ironruby-core mailing list
> Ironruby-core at rubyforge.org
> http://rubyforge.org/mailman/listinfo/ironruby-core
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20081208/a85ab581/attachment-0001.html>


More information about the Ironruby-core mailing list