[IronPython] defined in multiple assemblies (framework 3.5)

Dino Viehland dinov at microsoft.com
Tue Aug 19 19:48:52 CEST 2008


But can't you leave the assembly in the GAC and have ASP.NET pick it up from there?  It should be that it can be referenced for compilation from one spot and loaded from the GAC.

From: users-bounces at lists.ironpython.com [mailto:users-bounces at lists.ironpython.com] On Behalf Of Dody Gunawinata
Sent: Tuesday, August 19, 2008 10:46 AM
To: Dino Viehland
Cc: Discussion of IronPython
Subject: Re: [IronPython] defined in multiple assemblies (framework 3.5)

Nope. This compiles well but it won't be available for code behind. ASP.Net can only compiles dll located either on the GAC or under /bin directory.

If I put Microsoft.Scripting.Core under /bin and this option, it will generate error

"Error    10    An assembly with the same identity 'Microsoft.Scripting.Core, Version=1.0.0.4000, Culture=neutral, PublicKeyToken=1f108baf14f877c2' has already been imported. Try removing one of the duplicate references.
"



On Tue, Aug 19, 2008 at 8:34 PM, Dino Viehland <dinov at microsoft.com<mailto:dinov at microsoft.com>> wrote:

Ahh, apparently csc can't pick up assemblies out of the gac...  :(  But you should be able to copy Microsoft.Scripting.Core.dll anywhere you want and then reference it.  Now that it's in the GAC it should get picked up...  So I believe the final answer should be something like:



/r:DLR="C:\Microsoft.Scripting.Core.dll"



Where C:\ is some directory where you decide to stash the DLL.



From: users-bounces at lists.ironpython.com<mailto:users-bounces at lists.ironpython.com> [mailto:users-bounces at lists.ironpython.com<mailto:users-bounces at lists.ironpython.com>] On Behalf Of Dody Gunawinata
Sent: Tuesday, August 19, 2008 10:24 AM

To: Dino Viehland
Cc: Discussion of IronPython
Subject: Re: [IronPython] defined in multiple assemblies (framework 3.5)



I might be doing something wrong, but Microsoft.Scripting.Core.dll is definitely in the GAC.

(No space)
compilerOptions="/reference:DLR=Microsoft.Scripting.Core,Version=1.0.0.4000,Culture=neutral,PublicKeyToken=31bf3856ad364e35,processorArchitecture=MSIL"
generates

"Error    10    A /reference option that declares an extern alias can only have one filename. To specify multiple aliases or filenames, use multiple /reference options."

(Quotes)
 compilerOptions='/reference:DLR="Microsoft.Scripting.Core, Version=1.0.0.4000, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"'

Error    10    Metadata file 'Microsoft.Scripting.Core,Version=1.0.0.4000,Culture=neutral,PublicKeyToken=31bf3856ad364e35,processorArchitecture=MSIL' could not be found


On Tue, Aug 19, 2008 at 8:13 PM, Dino Viehland <dinov at microsoft.com<mailto:dinov at microsoft.com>> wrote:

Have you tried quotes?  It should just be getting passed to the command line so maybe quotes need to be present for the compiler to recognize it correctly - or maybe just removing the spaces will work.



From: Dody Gunawinata [mailto:empirebuilder at gmail.com<mailto:empirebuilder at gmail.com>]
Sent: Tuesday, August 19, 2008 10:13 AM

To: Dino Viehland
Cc: Discussion of IronPython
Subject: Re: [IronPython] defined in multiple assemblies (framework 3.5)



hmm..still not working. ASP.Net reads those four qualifier as four additional assemblies.

Error    10    Source file 'Version=1.0.0.4000,' could not be found
Error    11    Source file 'Culture=neutral,' could not be found
Error    12    Source file 'PublicKeyToken=31bf3856ad364e35,' could not be found
Error    13    Source file 'processorArchitecture=MSIL}' could not be found

On Tue, Aug 19, 2008 at 7:43 PM, Dino Viehland <dinov at microsoft.com<mailto:dinov at microsoft.com>> wrote:

Doh!  I forgot you probably need to use the fully qualified assembly name -  /reference:DLR=Microsoft.Scripting.Core, Version=1.0.0.4000, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL







From: Dody Gunawinata [mailto:empirebuilder at gmail.com<mailto:empirebuilder at gmail.com>]
Sent: Tuesday, August 19, 2008 9:40 AM
To: Dino Viehland
Cc: Discussion of IronPython

Subject: Re: [IronPython] defined in multiple assemblies (framework 3.5)



Yikes..

"Error    19    Metadata file 'Microsoft.Scripting.Core.dll' could not be found". This is weird.


 <compiler language="c#;cs;csharp" extension=".cs" warningLevel="4"
                  type="Microsoft.CSharp.CSharpCodeProvider, System, Version=2.0.0.0<http://2.0.0.0>, Culture=neutral, PublicKeyToken=b77a5c561934e089"  compilerOptions="/reference:DLR=Microsoft.Scripting.Core.dll">
          <providerOption name="CompilerVersion" value="v3.5"/>
          <providerOption name="WarnAsError" value="false"/>
        </compiler>

On Tue, Aug 19, 2008 at 7:00 PM, Dino Viehland <dinov at microsoft.com<mailto:dinov at microsoft.com>> wrote:

Ok, another thought...  can you GAC the DLR assemblies and then add an updated compilers tag to web.config which includes the alias?  Something like:

<system.codedom>
  <compilers>
      <compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CSharp.CSharpCodeProvider, System, Version=%ASSEMBLY_VERSION%, Culture=neutral, PublicKeyToken=%ECMA_PUBLICKEY%" warningLevel="1" compilerOptions="/reference:DLR=Microsoft.Scripting.Core.dll"/>
  </compilers>
</system.codedom>



-----Original Message-----
From: users-bounces at lists.ironpython.com<mailto:users-bounces at lists.ironpython.com> [mailto:users-bounces at lists.ironpython.com<mailto:users-bounces at lists.ironpython.com>] On Behalf Of Fernando Correia
Sent: Tuesday, August 19, 2008 4:19 AM
To: dody at nomadlife.org<mailto:dody at nomadlife.org>; Discussion of IronPython
Subject: Re: [IronPython] defined in multiple assemblies (framework 3.5)

That's a huge issue for my project. I'm trying to leverage the DLR and
IronPython on a ASP.NET<http://ASP.NET> application that targets 3.5. I hope there is
a work-around.

2008/8/19 Dody Gunawinata <empirebuilder at gmail.com<mailto:empirebuilder at gmail.com>>:
> - This pretty much locks up IronPython 2 from any .Net 3.5 based website.
> The ASP.Net MVC framework is based on .Net 3.5 too and they use a bunch of
> System.Core facilities in their code base. The nicest thing about .Net 3.5
> is to be able to use LINQ on code behind and right now when I compile my
> application, I got a bunch of warnings about duplicated LINQ definition
> methods existing in 2 assemblies. Now I cannot use Action<> or Func<> in
> code behind.
>
> - I think this will prevent the next IP for ASP.Net to be able to use .Net
> 3.5 libraries.

_______________________________________________
Users mailing list
Users at lists.ironpython.com<mailto:Users at lists.ironpython.com>
http://lists.ironpython.com/listinfo.cgi/users-ironpython.com



--
nomadlife.org<http://nomadlife.org>



--
nomadlife.org<http://nomadlife.org>



--
nomadlife.org<http://nomadlife.org>



--
nomadlife.org<http://nomadlife.org>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/ironpython-users/attachments/20080819/74e27136/attachment.html>


More information about the Ironpython-users mailing list