F # -Projektreferenzen funktionieren nicht beim Targeting der x64-Plattform in Visual Studio 2010

Ich habe ein F # -Bibliotheksprojekt, das von einem C # -Klassenbibliotheksprojekt abhängt, beide in derselben Lösung. Im Wesentlichen im F # -Code mache ichopen MyLib (wobei MyLib der Name des C # -Projekts ist), und greifen Sie auf Code zu, der im C # -Projekt definiert ist.

Ich kompiliere und beide Projekte werden ohne Fehler oder Warnungen erstellt. Wenn ich dann in beiden Projekten das Ziel von "Beliebige CPU" auf "x64" ändere, wird das C # -Projekt weiterhin einwandfrei erstellt, das F # -Projekt kann jedoch nicht mit Fehlermeldungen erstellt werden, die besagen, dass das Modul "MyLib" nicht gefunden werden kann. Ein Neuaufbau der Lösung hilft nicht. Das Entfernen aller Ordner bin og obj hilft ebenfalls nicht. Wenn ich das Plattformziel wieder auf "Beliebige CPU" oder "x86" ändere, wird alles erneut kompiliert.

Ich habe dies in einer Spielzeuglösung mit zwei kleinen Projekten reproduziert, die nur Trivialcode enthalten, sodass ich weiß, dass es nicht mit meinem spezifischen Code zusammenhängt.

Jemand anderes hat das erlebt? Bekannte Problemumgehungen?

be well -h-

Update: Auf Anfrage hier meine genauen Reproduktionsschritte.

Erstellen Sie eine neue leere Lösung in Visual Studio 2010 Fügen Sie der Projektmappe ein neues C # -Klassenbibliotheksprojekt hinzu, und nennen Sie es MyLib Füge eine statische Methode hinzuint GetAnswer() { return 42; } zur Klasse 1Füge der Projektmappe ein neues F # -Bibliotheksprojekt hinzu und bezeichne es als MyOtherLibEine Referenz aus dem F # -Bibliotheksprojekt zum C # -Klassenbibliotheksprojekt hinzufügen

Fügen Sie diesen Code zu Module1.fs hinzu, unter demmodule Module1 Linie

open MyLib

let answer = Class1.GetAnswer ()

Kompilieren. Alles sollte sauber bauen.

Wechseln Sie in den Projekteigenschaften für MyLib zur Registerkarte "Erstellen". Ändern Sie das Plattformziel auf x64. Tun Sie dasselbe für MyOtherLib.Build nochmal. Im F # -Projekt werden nun zwei Fehler angezeigt, die sich beide über einen Namespace oder nicht definierte Module beschweren.

UPDATE 2: Ich habe es gerade mit Visual Studio 2010 Beta 1 getestet und das Verhalten ist das gleiche.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage