Vra

Ek het 'n oplossing te vind wat 'n hele paar projekte bevat. Een van die toets projekte gebruik NET 4.0 as gevolg van 'n afhanklikheid. Die ontplooi in staat projek wat ek wil bou is gemik teen die NET 3.5 samesteller. Ons huidige bou script is nie korrel genoeg om te teiken verskillende NET opstellers op 'n projek deur basis projek. Basies kan ek net een samesteller vir elke projek in die oplossing.

Is die NET 4.0 samesteller slim genoeg om 3,5 kode op te stel?

Oplossing Struktuur

  • Project 1 NET 3.5 (installeer?-Staat)
  • Project 2 NET 4.0 (wat gebruik word vir die toets in outomatiese bou siklus)

Let wel: Ek kan nie net ignoreer Projek 2, want ons outomatiese bou bediener loop die eenheid toetse in projek 2. Alle toetse moet slaag voordat 'n bou suksesvol is.

Edit:

Ek is nie die opstel van hierdie kode binne Visual Studio. Ons het 'n gewoonte bou script dat eksterne word gelei om die Visual Studio. Dit is net slim genoeg om 1 NET samesteller gebruik. Dit maak gebruik van hierdie samesteller om al die projekte op te stel in 'n gegewe oplossing. Die bou script gee nie om of die projekte word gedefinieer word saamgestel teen 3.5 of 4.0. In plaas daarvan stel hulle met die gedefinieerde samesteller.

Project 1 verwys nie na projek 2. Projek 2 is 'n projek wat eenheid toetse. Ons outomatiese bou hulpmiddel Versamel Projek 2 net om toetse uit te voer.

Was dit nuttig?

Oplossing

wysig

Op uitgeklaar die vraag is die kommentaar as

  

Kan die 4.0 samesteller Stel 'n 3.5 projek

Die antwoord is ja dit is baie moontlik.

Ander wenke

Regskliek op jou projek "Projek 1" in die oplossing ontdekkingsreisiger. Volgende op Properties (warm sleutel is ALT + Enter). Onder die blad aansoek is daar 'n "Target Framework" drop down. Stel dat tot 3,5.

Nou wanneer jy stel (dit klink soos jy 'n command line) gebruik MSBuild en doen 'n teiken raamwerk weergawe nie spesifiseer. stel net die oplossing lêer en elke projek sal behoorlik op te stel.

Jy kan hardloop in kwessies na gelang van die aard van die biblioteke wat jy gebruik. In die besonder het ek probleme met naamruimtes / klas name wat nie bestaan ??het nie in in 3.5 wat in 4.0 geïmplementeer.

As jy iets esoteries soos die opstel van NHibernate bronkode as deel van jou oplossing sal jy in die moeilikheid doen. Anders, as jy nie is versterking op enige naamruimtes jy moet nie 'n probleem het die opstel van 'n 3.5-projek na 4.0.

Wat is verkeerd met die neem van antwoord Bob se? Gebruik jy 'n persoonlike bou oplossing (dit wil sê nie Visual Studio)?

Gelisensieer onder: CC-BY-SA met toeskrywing
Nie verbonde aan StackOverflow
scroll top