Språk: VB Kopiera allt rakt av bara... Se till att allt ligger i en egen applikation (normalt i roten) 1. Har någon av er testat på detta, hur gjorde ni? Har du lust att klargöra lite? Du behöver inga av dina *.vb filer, inte ens code-behind. Det finns andra filer som du inte behöver så som .resx .proj. MSI skulle kanske vara bra, men om man har en fritidswebb (dvs det inte är det man jobbar med) så känns det främst som ett första steg. Den dag du ändrar två sidor vill du kanske inte skapa om hela paketet och installera om det... Sedan kanske inte webbhotellet heller tillåter att du loggar in så att du kan köra en MSI fil. Hur fungerar det??? Känns som jag missat något grundläggande. Kompileras dessa filer ner till den häringa MSIL-filen, eller? Du har förstått helt rätt: Klasserna i .aspx.vb kompileras till MSIL och finns i bin/projektnamn.dll. Din .aspx ärver från din klass, och eftersom den finns kompilerad i .dll så behövs in .aspx.vb. Nu har jag nog lite mer koll på läget.Flytta "färdig" .NET-web till webhotell
1. Har någon av er testat på detta, hur gjorde ni?
2. Vilka fallgropar skall man undvika?
3. Skall man kopiera eller använda MSI?
4. Hur gör man för att paketera med MSI?
5. Om jag behöver kompilera om efter att jag lagt upp webben på webhotellet, hur går jag tillväga?
6. Saker att tänka på?
mm, mm
Tacksam för svar på i alla fall på någon fråga :-)Sv: Flytta "färdig" .NET-web till webhotell
Sv: Flytta "färdig" .NET-web till webhotell
Finns flera olika sätt:
XCOPY (Som Onkelberg skrev, kopiera filerna till en server.)
Du kan packetera allt till ett installtionsprogram, du kan skapa ett project för detta i VS.Net som du kan lägga till i din solution. Detta projekt måste oxå kompileras.
Finns även ett menyval där du enkelt anger en sökvägen till din webbserver och sedan fixar VS.Net kopieringen av filer till servern åt dig. Kommer dock inte ihåg menyvalet (Mitt VS.Net fungerar inte på min dator efter att jag installerat Visual Studio .Net "Whidbey", nu fick jag sagt det oxå ;) )
2. Vilka fallgropar skall man undvika?
Se till att inte kopiera över källkoden (dina .vb filer) om du inte vill att andra som har tillgång till servern ska få tag på den. (Går inte att nå dom via en URL, utan enbart i det lokala nätet).
3. Skall man kopiera eller använda MSI?
Det avgör du, att paketera en produkt är alltid snyggt, men att bara dra och släppa filer är enkelt.
4. Hur gör man för att paketera med MSI?
Se punkt ett om att skapa ett installationsprogram.
5. Om jag behöver kompilera om efter att jag lagt upp webben på webhotellet, hur går jag tillväga?
Det får du göra på din utv-server och kompilera där, sedan kopiera över filerna igen. Dock så kan du förändra aspx sidorna så länge du inte tar bort eller byter namn på dina kontroller på servern utan omkompilering.
Nu till något som ev kommer att göra dig glad och många andra. I ASP.Net 2.0 "Whidbey" så finns det en mapp med namnet Code som ligger i roten av projektet. Där kan all källkod sparas. Whidbey kommer automatsikt att kompilera all kod som finns i Code mappen till assemblies. Det innebär att du skulle kunna kopiera över alla dina filer inklusive källkod till servern och göra förändringar på i koden utan att själv kompilera om eftersom Whidbey sköter det åt dig. Det finns även något som heter pre-compile, du använder då ett verktyg som kan kompilera all kod inkl aspx sidor till enbart dll:er som enkelt kan kopieras över till servern. Det innebär att det inte finns någon somhelst kod på servern, utan en hög med dll:er. Det finns även andra nyheter när det gäller kompilering så som att kompilera projektet på en server via en URL "In-pace pre-compilation" mm.
Lite överkurs men kanske kul för några att veta.
/Fredrik Normén NSQUARED2
http://www.nsquared2.netSv: Flytta "färdig" .NET-web till webhotell
Fråga 2.
A. Nu är jag säkert ute o cyklar men behövs ej vb-filerna på Webhotelservern, jag vill ju såklart hålla koll på dessa filer.
B. Du menar väl enbart .vb-filerna ej .aspx.vb(code-behind)
Hmm, säkert dumma frågor men varför inte :-)Sv: Flytta "färdig" .NET-web till webhotell
/Fredrik Normén NSQUARED2
http://www.nsquared2.netSv: Flytta "färdig" .NET-web till webhotell
För att ha lite koll när jag lägger upp mina saker har jag skapat en deploy.bat som kopierar alla nödvändiga filer till en ny katalogstruktur. Sedan använder jag SmartFTP (från download.com tror jag) och gör drag-and-drop av alla filer från deploykatalogen till min wwwroot på webbhotellet.
Den del av min batfil som kopierar själva siten ser ut som nedan (sedan finns lite annat för engelska, mobile controls, ZIP, etc). Jag använder .ascx istället för .aspx pga hur jag bygger upp mina sidor, men de har ju liknande funktioner. Och precis som Fredrik sa så är det ju bara .aspx som behövs, inte .aspx.vb.
<code>
SET NETOLOGI=C:\Inetpub\wwwroot\netologi
cd %NETOLOGI%
md deploy
cd deploy
copy %NETOLOGI%\web.config .
copy %NETOLOGI%\netologi.css .
copy %NETOLOGI%\default.aspx .
copy %NETOLOGI%\global.asax .
md bin
copy %NETOLOGI%\bin\netologi.dll .\bin
md content
copy %NETOLOGI%\Content\*.htm .\Content
md controls
copy %NETOLOGI%\Controls\*.ascx .\controls
md configuration
copy %NETOLOGI%\Configuration\*.xml .\configuration
md images
copy %NETOLOGI%\Images\*.* .\images
</code>
Lagt till lite senare:
När du har gjort en ändring så har du tre fall:
* Om du ändrat i koden, dvs .aspx.vb, så måste du enbart kopiera den nya bin/projektnamn.dll.
* Om du ändrat i HTML, dvs .aspx, så måste du enbart kopiera denna .aspx.
* Ändrar du båda två, t.ex. lägger till en ny kontroll och sedan använder den i koden, så måste du kopiera bin/projektnamn.dll och .aspx.
/MattiasSv: Flytta "färdig" .NET-web till webhotell
Scenario:
Jag har en web lokalt t.ex. demo.myweb.com, högst upp på alla .aspx.sidor referaras till codebehind-formuläret, typ: Inherits="demo.myweb.com.myClass"
I min bin-mapp har jag:
-> demo.myweb.com.dll
-> demo.myweb.com.pdb
Om jag nu vill lägga upp detta på mitt webhotell, typ: www.myweb.com så säger du att det räcker att kopierar över .aspx samt .ascx (mina användarkontroller)-filerna. Jag måste väl i alla fall ta med filerna i bin-mappen?Sv: Flytta "färdig" .NET-web till webhotell
Du hann nog inte kolla på mitt förra inlägg (det skiljer ju bara någon min mellan våra inlägg), min .bat fil visar vilka filer du ska kopiera. Glöm t.ex. inte global.asax.
/MattiasSv: Flytta "färdig" .NET-web till webhotell
JAG VILL TACKA FÖR ALL HJÄLP SAMT FÖR ALLA UTFÖRLIGA SVAR :-)