2008-10-13 5 views

Antwort

15

Sie können Sprachen mischen mischen in eine einzelne Baugruppe mit ILMerge und MSBuild.

Here ist ein sehr gutes Beispiel dafür.

+3

ein netter Trick zusammenführen können, aber Sie haben noch separate Projekte für jede Sprache erstellen müssen, was war das, was die Frage speziell gefragt - gut zu wissen über die Post-Build-Merge-Sachen, aber danke für den Link! –

+2

Ja das ist wahr, aber in ASP.NET können Sie Sprachen mischen, und Visual Studio macht den Trick ... http://tinyurl.com/4g9ohv – CMS

2

Sie die Sprache in jedem Baugruppe Projekt angeben (Bibliothek DLL) und in der gleichen Lösung, mehrere davon verwenden, aber ich glaube nicht, Sie Sprachen innerhalb derselben Baugruppe

+1

i korrigiert stehen - Sie Baugruppen in verschiedenen Sprachen in einer Baugruppe –

8

CMS erwähnt einen interessanten Ansatz, aber in Wirklichkeit würde ich vorschlagen, dass Sie die Dinge einfach halten und verschiedene Assemblies (Projekte) für den C# - und F # -Code haben. Es gibt gut dokumentierte Kommunikationspunkte zwischen C# und F # (wie here und here) - ich würde sie stattdessen empfehlen. Die Unterschiede zwischen C# und F # (besonders mit F # mit einer anderen Laufzeit!) Sind ziemlich groß ...

+2

Diese beiden Links sind gestorben :( – penguat

11

Ja, Sie können, aber Visual Studio unterstützt es nicht direkt. Was Sie tun werden, ist Code zu netmodules zu kompilieren, dann kombinieren Sie sie zu einer einzigen Assembly. Die Compiler unterstützen die Option "/ target: module", die diese Netmodule generiert.

Sie können dann die Compiler verwenden, um beim Erstellen auf andere Netzmodule zu verweisen, oder verwenden Sie Assembly Linker (Al.exe). Es gibt sogar eine msbuild-Aufgabe: AL (Assembly Linker) Task.

Eine vollständige Übersicht finden Sie auf MSDN bereitgestellt: How to: Build a Multifile Assembly

Verwandte Themen