2016-06-28 2 views
1

Ich konvertiere ein massives vb Webforms-Projekt in ein C# mvc-Projekt und mit eckigen für das Front-End. Es gibt einen großen Teil der Website, wie 500 Webformulare, die ich als vb webforms verlassen möchte. Ich weiß, dass es möglich ist, ein vb-Projekt und ein C# -Projekt in dieselbe Lösung zu stellen. Kann ich beide auf derselben Website auf IIS veröffentlichen und auch die Authentifizierung teilen? Ich möchte nicht zwei Web-Domains verwalten müssen. Ich möchte nicht von www.website1.com zu www.website2.com gehen. Ich möchte beide in www.website1.comvb Projekt und C# Projekt in der gleichen Lösung auf der gleichen Website

Vielen Dank im Voraus

+0

"Anfragende (leitende) Köpfe möchten gerne genau wissen, warum *" über 500 Webforms ", jetzt in VB geschrieben, werden in" C# "* und (!) * Umgewandelt, weshalb Angular ins Bild gebracht wird Gibt es tatsächlich ** Business ** Rechtfertigung für diesen Aufwand, da VB und C# in genau den gleichen Bytecode kompilieren, und beide respektable Compiler sind? –

+0

Das ist das Problem Im Versuch zu lösen.Ich warf gerade schräg da draußen, es ist nicht Das größere Bild ist, dass der eckige Teil der neu gestaltete Teil der Seite ist und ich ihn nicht in VB erstellen wollte. Ich bin wohler mit C# und so ist der Rest des Entwicklerteams, aber ich will nicht wandle das ganze Projekt um, wenn ich nicht muss Ich würde gerne die neuen Abschnitte mit C# entwickeln und den Rest alleine lassen Danke – user973671

+2

... und als die sich entwickelnden "Antworten" zu dieser Aufgabe Ich fange an zu buchstabieren, du kannst * nur * das tun. IIS beschäftigt sich nur mit * kompilierten * Objekten, und die zwei Sprachen kompilieren zu demselben Ding. Die einzige Vorsichtsmaßnahme, die ich hier hinzufügen möchte, ist, dass Sie in Ihrer entwickelnden C# -Anwendung ein paar "Fäustling" * -Klassen entwickeln sollten, mit denen Sie problemlos mit den VB-Komponenten umgehen können. Die C# -Sprache verkörpert viele Programmierkonzepte, von denen die VB-Sprache nichts weiß. Stellen Sie in Ihrer C# -Anwendung eine Klasse für die Robustheit bereit, die sich gegenseitig abschirmt. ("Details liegen bei Ihnen." **; -) **) –

Antwort

1

Ja, Sie können. Beide Sprachen (VB.NET und C#) werden für den IL-Code kompiliert, sodass für IIS kein Unterschied zwischen den in diesen beiden Sprachen entwickelten Bibliotheken besteht. Sie können sogar von einer Bibliothek auf eine andere verweisen und sich nicht um ihre ursprüngliche Quellsprache kümmern.

+0

Also einfach den Inhalt der beiden veröffentlichten Projekte in den gleichen wwwroot Ordner fallen lassen? Was ist mit web.configs? Denkst du, dass es wichtig ist, wenn es zwei gibt? – user973671

+0

Ja, es wird in diesem Fall wahrscheinlich eine Rolle spielen. Sie müssen sowohl in web.config suchen als auch zusammenführen (zum Beispiel gibt es verschiedene Verbindungszeichenfolgen für Datenbanken). Dann füge Projekte in einer Lösung mit einer web.config zusammen, aber du kannst dich nicht um Projektsprachen kümmern. Wenn Sie es nicht einfach zusammenführen können, dann versuchen Sie, eine Unteranwendung in die andere in einem separaten Unterordner zu legen und führen Sie es wie http: // IhrDomain/Unterordner (die Hauptanwendung wird einfach http: // IhreDomäne) - weil sie die verwenden gleiche Domain dann können Sie den gleichen Cookie für die Sitzung verwenden. – zajonc

+0

Ok, krank, versuchen Sie es, danke für Ihre Hilfe! – user973671