mandag den 29. oktober 2012

Gråtone effekt på billede med CSS


Billeder er noget af det vigtige på dit site for at skabe liv og dynamik.
Du kan udvide dette ved at give dine billeder effekter når man peger på dem (hover effekt).

Dette er noget jeg selv har tænkt på at gøre ved nogle af mine billeder.
Specielt gråtone - enten fra gråtone til farve, eller modsat.
Har også overvejet at lave et billede i gråtone, med en farve der skinner igennem (ligesom grøn som er mit hovedtema-farve) så når man får fade effekten fra gråtonebillede til "farve" så er det kun de grønlige toner der vil komme til syne. Dette ville også kunne opnås med to billeder der skiftes imellem.

Så jeg faldt over dette indlæg som faktisk nemt gennemgår hvad der skal til for at skabe denne ret fede effekt.
http://bechster.dk/2012/09/26/cross-browser-gratoning-af-billeder-med-css/

torsdag den 18. oktober 2012

Nysgerighed til dine brugere er det bedste våben


På et website er det altid vigtigt at fange din brugers interesse.
Det kan gøres på mange måder, og et godt eksempel er ved online-shops at vise lignende produkter, hvad andre har handlet etc.
Det er vigtigt du stimulerer din besøgendes interesse for at klikke mere rundt og læse mere på dit site, fordi du så sørger for de bliver mere interesserede i at læse mere eller andet.

Jeg har for nyligt selv fundet en måde at gøre dette på en del af mit udvikler CV-site.
Når man ser på en ansættelse kan man se hvilke teknologier jeg har brugt, og hvis man klikker på en af disse teknologier/kompetencer så kommer man til et detaljeret billede.
Her vises så detaljerne for denne kompetence og man kan se alle steder jeg har fået erfaring til denne kompetence i form af ansættelser, kurser, uddannelse, certificering etc.
Udover dette vises også hvornår den sidst er blevet brugt, og hvor mange års erfaring jeg har med denne kompetence.

Hver sted jeg har fået erfaring fra linker jeg også til, så man kan klikke videre til andre ansættelser og læse mere. Det er en måde at skabe interesse for de læser mere og andet.

Dette er vigtigt fordi du forsøger derved at få din bruger til at læse dit indhold og det du har brugt tid på - som jo er meningen med dit site.

onsdag den 17. oktober 2012

C# udvikler der tænker anderledes


Som C# udvikler kan man til tider godt have en tendens til at gå meget dybt i detaljer med ting og fokusere meget på de små detaljer.
Sådan er jeg nemlig! Hvis jeg har mulighed for det vil jeg gerne fortsætte til tingene er næsten helt perfekte fordi jeg er meget perfektionistik i mit arbejde og går ind for effektiv kode der løser problemerne på en intelligent måde.

En af mine personlige "problemstillinger" er at holde styr på mine kompetencer og erfaring.
For mig er det vigtigt at få lavet et overblik tidligt i min karriere da jeg ellers ikke vil kunne vedligeholde eller opdatere dette senere.
Fx på en side hvor man lister sine kompetencer, hvornår de sidste er blevet brugt, og hvor mange års erfaring man har med det, er problemet at det skal du huske at vedligeholde. Hvis man ikke gør dette virker din side negativt da den ikke er vedligeholdt.
Et andet problem er at man et år eller 9 måneder efter aldrig kan huske detaljerne for hvorfor der står 6½ års erfaring indenfor C#, og derfor hver gang skal ransage sig selv, sin hukommelse og udvikler CV for at se hvad der begrunder ens valg.

For at slippe for dette har jeg nu lavet mit eget system i forbindelse med min egen side www.csharpudvikler.dk for at lette denne administrative opgave.
Alt i alt kommer det hele ned til erfaringer, erfaringer, erfaringer.

Så jeg skal kunne knytte mine kompetencer til noget erfaring i form af ansættelser, projekter, uddannelser, projekter, certificeringer, og andet for at kunne sige jeg har erfaring.

Dette giver at jeg kan beregne:
  • hvor meget erfaring jeg har
  • hvor jeg har fået det fra
  • hvilke typer erfaring det er baseret på (uddannelse, kurser, ansættelser, projekter eller hvad?)
  • Hvornår den sidst er brugt
Dermed kan jeg nu nemmere vedligeholde mit system og min erfaring - da jeg ikke selv skal huske hvorfor, men kun huske hvad jeg har lavet og fra hvornår og til hvornår. Så kan jeg knytte kompetencer til alle disse ting og jeg kan dermed lave en liste over hvad jeg har erfaring med, hvilken type erfaring det stammer fra og hvor lang tids erfaring jeg har med det.

Så nu skal jeg vedligeholde hvad jeg har lavet, og hvilke kompetencer jeg har brugt til forskellige ting, og så vil min side selv sørge for at opdatere og vedligeholde mine kompetencer.

Som ekstra bonus så kan jeg nu præsentere alle disse informationer på min side, og sørge for brugeren kan navigere rundt og få interesse for mere.
Så jeg kan vise en liste over kompetencer, på ansættelser kan jeg vise hvad jeg har arbejdet med, på kurser kan jeg vise det samme, eller på uddannelser, certificeringer osv. og ved at klikke til en af disse kompetencer kan man få en oversigt hvor jeg har fået erfaring med denne kompetence ellers, og hvilken type erfaring det dækker.
Dette giver større interesse for at surfe rundt og læse mere og se flere detaljer, som er lige det jeg ønsker.
Tænde brugeren for at skabe større interesse for mig som c# udvikler, og mine erfaringer og mine kompetencer.

tirsdag den 16. oktober 2012

ASP.NET MVC Optimeret til hastighed


Jeg begynder at være mere og mere glad for MVC3 og MVC4! Netop fordi det er SEO venligt, det er smart og lækkert og sidst men ikke mindst fordi det er enormt hurtigt!
I går lavede jeg en test med min side lokalt med referencer til enormt store billeder på nettet som jeg bruger som test-data som skaleres ned, og derfor ikke specielt effektivt.
Udover dette så er der en masse inline-styles, og ineffektiv kode som skal optimeres, men alligevel gik det lynende stærkt med at levere min side fuldt med billeder og alt muligt.

Jeg blev virkelig overrasket over hvor effektivt det er for min side som har rimeligt meget indhold, billeder og andet som langt overstiger de 7 elementer som skal hentes simultant før den skal vente på næste element.
Jeg kunne se at efter min test at selvom jeg på en pæn del af mine sider har store billeder, tekst og design så loader siden langt langt under et sekundt.
Jeg var ret imponeret netop fordi jeg ikke engang var begyndt at performance optimere min side endnu så meget som jeg kan.

Så jeg glæder mig til at kunne frigive min C# systemudvikler side og se hvordan "verden" tager imod den, hvordan Google tager imod den og hvor meget trafik den vil kunne tiltrække.

Jeg skal selvfølgelig have lavet noget med noget optimering i form af caching på klientens maskine (done), komprimering af webindholdet (done på siden alene, ikke alt indhold der kræves som billeder, css'er, javascript etc), og så også caching på serveren med mine objekter.
For så skal den ikke lave en masse beregninger på mine objekter og business model, men kan levere den færdig tilbage til dig.

torsdag den 11. oktober 2012

C# front-end udvikler til Widex

Faldt over denne på IT-Jobbank og virkede faktisk okay spændende.

Det ligger også okay tæt på Veksø, så det er helt klart en jeg skal huske den dag det måske bliver aktuelt.

Har også sendt mig selv en pdf så jeg kan huske den, for det kunne godt være spændende.

Så kan man jo se på http://www.dotwest.net/CV/Kompetencer.aspx om mine kompetencer de dækker, eller se mere på www.csharpudvikler.dk om jeg er den rette profil.

Nyskabende c# udvikler


Jeg tænker altid i anderledes retninger og specielt når det kommer til udvikling (C# & .NET) - både privat og professionelt.
Dette viser mit nyeste projekt http://www.csharpudvikler.dk/ også, ved at tænke anderledes på denne front.
Enormt mange har deres egen online portofolio, cv, profileringsside, og samme har jeg da jeg ønsker at dække breddere og være mere professionel.
Problemet med en sådan side er altid bare at vedligeholde den og holde den opdateret, da den ellers vil få den totalt modsatte effekt fordi den virker ligegyldig og ikke opdateret de sidste 4 år giver et forkert negativt billede.

Så jeg spurgte mig selv, hvorfor skal jeg vedligeholde den? Det kan den sku da selv!

Dette kickstartede mit nye projekt.
Jeg laver en side der meget nemt kan holde styr på mit cv for mig, ikke uden jeg skal opdatere informationerne engang imellem, men ikke halv eller helårlig.
I starten vil jeg vedligeholde mit offline pdf-cv selv fordi det ikke skal indholde alle data, hvor mit online CV skal vise alting og vedligeholde sig selv noget mere.
Kan være med tiden jeg vil ændre det og gøre brug af noget autogenereret som tager en template og søger og erstatter for at skabe mit cv til pdf også, men det vil tiden vise.

Et problem med at vedligeholde disse data er altid at huske alting, og hvorfor er det nu lige der står 6år og 4 måneders erfaring indenfor C# .NET, og så skal jeg huske det er lidt derfra, lidt derfra og noget fra det og det og det etc. Problemet er at jeg skal altid huske disse ting, og hvis der gået et halvt eller helt år har jeg lykkeligt glemt alt om det.
Så i stedet vil jeg ændre så alting er baseret på konkret erfaring - for at give mig selv en huskepind hvorfor der står 10års erfaring og hvad dette dækker.

Så hvad giver erfaring?
Det gør ansættelser, uddannelser og studie, kurser, certificeringer og måske konferencer, og selvfølgelig en masse projekter.
Hvis du er ansat som C# udvikler et sted kan du være sikker på du får erfaring med C# og .NET i alt den tid du er ansat, og dermed knytte din erfaring til ovenstående områder som kan give dig erfaring.

Alt det som du ikke arbejder med konstant under denne ansættelse giver dig stadig erfaring, men ikke for den fulde periode. Her kan du så tilknytte det til projekter indenfor denne erfaring (ansættelse, uddannelse).
Således vil jeg lave at alle mine kompetencer selv vedligeholder hvornår de sidst er brugt da det kan beregnes, og hvor mange års (og måneders) erfaring jeg har indenfor denne kompetence for det vil den også kunne beregne.
Jeg skal kun vedligeholde ansættelser i tilfælde af jeg skifter job, projekter, og kurser og måske certificering - og så slipper jeg for hovedpinen med at huske hvorfor jeg for et år siden skrev 7års erfaring indenfor C# .NET og om jeg havde husket at tælle det projekt med eller det kursus etc.

Så at arbejde i 2-3 måneder med WPF og WCF skal på et projekt under denne ansættelse eller uddannelse.

Således vil jeg også kunne liste mine kompetencer og være sikker på det er korrekt det jeg fortæller, jeg skal ikke selv vedligeholde så meget, og jeg vil grafisk og logisk kunne fortælle hvorfor der står 7 år, 4 måneder i C# .NET fordi jeg har fået xx erfaring fra den ansættelse, det kursus, den ansættelse, den uddannelse, etc. og så kan folk se hvad denne erfaring indebærer.

Så det skal gerne give et større payoff og hitrate på grund af min side, og når jeg har virkelig behov for at gøre brug af den. Men også gøre det langt nemmere for mig selv at vedligeholde og fokusere på noget andet, samt at de besøgende kan få detaljeret at vide det er fra det og det du har din erfaring.
Nogle anser uddannelse som erfaring, andre gør ikke, nogle mener kurser er erfaring, andre gør ikke.
Så nu kan folk selv se hvad det indebærer og vurdere det ud fra det.

Tilpasse til mobile devices

Jeg er jo ved at arbejde på min C# udvikler side www.csharpudvikler.dk og har lagt mærke til at når jeg kører speedtests på den så det screenshot de tager af den ser helt skævt ud.
Som om der er noget der går galt, og kan jeg ikke genskabe ved at resize min egen browser.

Så prøvede jeg også at åbne min side på min Samsung Galaxy S3 og her ser den også underlig ud. Meget mystisk tænkte jeg og prøvede så at bruge min kæreste Nokia Lumia 800 og samme problem.

Så nu skal jeg til at se på hvad der går galt og gør at siden ser så underlig ud, så nu skal jeg se på om jeg måske kan debugge til mobil platform og finde ud af hvad problemet kan være.

Jeg vil prøve at bruge Chrome som kan connecte til chrome på min android og så prøve at debugge som jeg debugger normalt.

http://www.youtube.com/watch?v=s4zpL4VBbuU det fortæller hvis lidt om hvordan det foregår.

Tabeludvikling er en pinsel


For nogle år siden arbejdede jeg meget med tabeller fordi det var nemt at holde ting præcis hvor de skulle være, og kunne slet ikke se hvorfor man ikke brugte dette i forbindelse med design af websider og webudvikling.
Efter at have læst et dokument med tabeller vs. div'er blev jeg omvendt og begyndte at lære style og brug til div'er og andre visuelle elementer.
Nu har jeg godt styr på det, men skal nu arbejde med tabeller igen.
Og nu er problemet at jeg kan alt med div'er og kan mærke og se hvor meget nemmere det er at lave optimalt design ved hjælp af div'er.
Det er virkeligt irriterende at skulle style, og placere tabeller hvor man har vænnet sig til optimal webudvikling med div'er.

Nu kan jeg mærke jeg er ved at blive en sand webudvikler fordi jeg har lyst til og ved hvordan optimal webudvikling og design og funktionalitet skal udvikles, med optimale værktøjer, teknikker og teknologier.

Så det sjove er at jeg nu skulle arbejde i tabeller og det er bare en pinsel fordi tankegangen er en helt anden og pludseligt er det meget sværere for mig at få den skide tabel til at opføre sig ordentligt og ville ønske jeg skulle lave det i div's istedet.
Sund udvikling jeg får det sådan og blev lidt overrasket selv.

onsdag den 10. oktober 2012

Komprimering af dit webindhold i MVC (GZIP / Deflate)




Boob deflate billede?

Når dine sider sendes afsted over din forbindelse så er der utroligt meget pladsspild, fordi der i vores html (tekstfiler) er meget spildplads. Vi vil gerne have det formateret pænt og læseligt, men er faktisk slet ikke nødvendigt for ens side og gør bare at den fylder mere.
Du kan nemt gå fra 52kb til 7kb som altså betyder meget. Dette er selvfølgelig forskelligt alt efter hvad indhold du har på din side, men uanset hvad er der besparelser at få.

Derfor kan du komprimere dit indhold.
Dette kan du gøre i web.config

<system.webServer>
   
<urlCompression doStaticCompression="true" doDynamicCompression="true" />
</system.webServer> 

Eller du kan lave filtre du kan dekorere dine Controller actions med.

using System.Web;
using System.Web.Mvc;

public class CompressFilter : ActionFilterAttribute
    //FilterExecutingContext filterContext
    public override void OnActionExecuting(ActionExecutingContext filterContext)
    {
        HttpRequestBase request = filterContext.HttpContext.Request;

        string acceptEncoding = request.Headers["Accept-Encoding"];

        if (string.IsNullOrEmpty(acceptEncoding)) return;

        acceptEncoding = acceptEncoding.ToUpperInvariant();

        HttpResponseBase response = filterContext.HttpContext.Response;

        if (acceptEncoding.Contains("GZIP"))
        {
            response.AppendHeader("Content-encoding", "gzip");
            response.Filter = new GZipStream(response.Filter, CompressionMode.Compress);
        }
        else if (acceptEncoding.Contains("DEFLATE"))
        {
            response.AppendHeader("Content-encoding", "deflate");
            response.Filter = new DeflateStream(response.Filter, CompressionMode.Compress);
        }
    }
}

Her er det vigtigt GZIP ligger øverst fordi den bruger en 10byte header og lidt andre ting til at lave fejlkorrigering og fejlcheck på den komprimerede stream, hvor deflate ikke gør det. Så hvis browseren understøtter det så lad den for gud skyld bruge den lille mikro smule mere plads på at sikre at data er validt.
Dette gøres således:

a gzip file/stream contains:
- a 10-byte header, containing a magic number, a version number and a time stamp
- optional extra headers, such as the original file name,
- a body, containing a DEFLATE-compressed payload
- an 8-byte footer, containing a CRC-32 checksum and
  the length of the original uncompressed data

Hvis du har fået mere interesse for dette så se nærmere her: http://weblogs.asp.net/rashid/archive/2008/03/28/asp-net-mvc-action-filter-caching-and-compression.aspx

LIG DOG MÆRKE TIL NEDERST PÅ SIDEN MED ORDER

You can also apply both these filter in the same action method, like the following:
[CompressFilter(Order = 1)]
[CacheFilter(Duration = 60, Order = 2)]
public void Category(string name, int? page)

her er Order meget vigtig.
Dette er fordi du fortæller her at Compress skal ske først (Order = 1) (så den går fra 52kb til 7kb), og det næste (Order = 2) er at den skal cache den compressede udgave så den ikke cacher en version der fylder 52kb i stedet for 7kb for så enten skal den compresses igen og tage tid og maskinkræft, eller også leverer den bare en 52kb fil afsted i stedet for den på 7kb.
Duration er det antal sekunder den skal caches.

mandag den 8. oktober 2012

Windows 8 vil dræbe Microsoft?


Undersøgelse viser at 50% af Windows 8 brugere foretrækker Windows 7.

Nu er spørgsmålet så om Microsofts meget vovede udfordring med Windows 8 og Modern UI (Metro design) er for tidligt og om det vil blive et fald til Microsoft.
Det er afgørende for Micosoft at komme godt fra land med tablet platformen og ikke komme bagefter som de har gjort i søgemaskine-løbet til Google som umuligt (nuværende) kan vindes tilbage, og mobile platform som der nu kæmpes om at få mere tilbage af.

Det er spændende at se om det er begyndervanskeligheder, for vi ved jo alle at det med at skulle væk fra det vi kender (trygge) er besværligt. Derfor det er lige så svært at ændre vaner fordi vi er vanedyr og holder fast i det vi kender og kan li.
Derfor kan det være begyndervanskeligheder, som kan vende når markedet vænner sig til det - men det kan også være tegn på at det er radikalt for anderledes en brugeroplevelse og brugsmønster til at det kan modtages.
Som jeg allerede har talt om har windows 8 mange ting imod sig som kan gå galt, men samtidigt har de også mange muligheder for at kunne samarbejde på mange platforme og dermed gøre noget anderledes end mange konkurrenter ikke har.
Hvis du kan sidde på arbejde på din bærbar og gemme et dokument eller en powerpoint præsentation, læse videre på den og dine dokumenter på din windows phone på vej til møde og når du er kommet hjem så tage din tablet frem og arbejde videre eller se din huskeliste over ting du skal se og læse.
At alle dine digitale medier samarbejder er noget som Microsoft for alvor vil kunne gøre alvor af!
For Microsoft kan det også være en fordel at kunne bibeholde så mange platforme samlet i et system der skal vedligeholdes og dermed meget nemmere.

Men der er også meget imod dem, som de skal se nærmere på.
Enterprise markedet er ikke tilpasset til Metro design og Modern UI, så her vil "startskærmen" ofte blive overflødig og irriterende.
Metro / Modern UI applikationer er af en størrelse der ikke vil gøre dem store og avancerede til teknisk brug for den almindelige arbejder til sine forretningsprocesser, og dermed mere irritationselement.
At du skal gøre noget aktivt for at få adgang til dine filer er irriterende anderledes og besværligt for mange fordi mange brugere gør dette uhyre meget.
At alting er optimeret til nye mobile devices gør at det med at bruge en mus er besværligt og unaturlig. På masser af konferencer er der fingeraftryk og fedtfingre på skærmene fordi folk forventer man kan swipe til siderne for at se mere eller trykke på tiles, men det skal man bruge musen til.

Bliver spændende at se hvordan Microsoft vil bære den ud og komme igennem det.

torsdag den 4. oktober 2012

Dine business objekter i produktion (URL'er)


Det kan være dejligt at have din egen ASP.NET Development Server som kører alting for dig lokalt på din maskine når du skal teste dine ting.
Dog skal du være opmærksom på dine objekter og URL'er fordi i produktion kan tingene være anderledes.
Jeg havde fx ikke selv tænkt over at nogle stier i min adresse hed firmanavn som fra tidligere ansættelser indeholdt mellemrum.
Det sjove var at det virkede fint lokalt på maskinen, både i IE og FF, hvor firefox selv indsatte "+" hvor der var et mellemrum og den lokale ASP.NET Development Server kunne åbenbart håndtere dette og forstå det.

Nu ville jeg så ligge den over på produktion for at vise en ven noget og bare for at have noget at se på i produktion. Her virkede det så pludseligt ikke og her satte den også "+" ind hvor der var mellemrum, men serveren kunne åbenbart ikke håndtere det.

Så tænk over dine objekter og navngivning når du skal bruge dem som reference i din URL'er.
Jeg løste det ved at alle links nu erstatter " " med "-", og i min model når jeg får fx firmanavnet ind så vil den lede efter "firma-navn" = firma.replace(" ", "-") fordi at så kan min model finde det rigtige objekt.

En lille problematik jeg havde på min udvikler side med mit udvikler cvwww.csharpudvikler.dk

onsdag den 3. oktober 2012

"Farlige" forskelle i VB.NET og C#.NET (Rekursiv kode)


Jeg er jo indfødt C# .NET systemudvikler så gamle vaner dør svært. Det kan mærkes nu på mit nye arbejde hvor jeg skal arbejde med VB.NET.

Jeg har jo arbejdet med C# og .NET igennem en del år efterhånden, men ikke med VB.NET - dog følte jeg stadig at jeg havde set det meste. Nej det havde jeg så ikke..
Hvis man i VB.NET har et objekt med en arrayliste på og skal kalde et index skal man bruge "(index)" for at få det, hvor i C# bruger man "[index]".
Det "farlige" her er at når man skal bruge VB.NET så er "[index]" refererende til sit eget objekt (forudgående).
Så pludselig vil du i din "arrayliste[0]" få samme objektstruktur efter punktum.
Opdagede det hvor jeg skulle igennem et objekt med et array som pludselig gav et objekt med samme array på i en uendelighed - ligesom følger:
lines[0].lines[0].lines[0] etc.

Det kan godt være lidt farligt det ikke giver nogen kompileringsfejl og også fordi man kan blive ved sådan.
Rekursiv kode længe leve!!

Unittesting - Sikre din kode til fremtiden

Nu sidder jeg og arbejder med unittesting til dagligt og som en del af noget omlægning af et projekt.
Her kan jeg meget nemt se effekten af unittesting.

Når vi fx laver en ny type rapport og nedarver fra noget eksisterende og begynder at kunne se et brugsmønster der gør vi kan refakturere således at i stedet for 4-5-6 klasser kan vi muligvis nøjes med 1 eller 2, så hjælper unit testing enormt meget!

Når vi har refaktureret vores kode så fejler vores unittests efter at have rettet dem til og vi kan nemt se at business processer pludselig nu får problemer og hvor vi skal rette i vores refakturerering for at det kan virke. Det kan virke kedeligt og trivielt og ligegyldigt når man sidder med det og bare skal have lavet nogle, men bagefter når man skal arbejde videre med det senere så er det sådan en stor hjælp.
Så det er helt klart noget man ikke kan komme udenom hvis man vil have effektiv kode.

tirsdag den 2. oktober 2012

Effektiv flytning af domæne (SEO)

Ofte så har folk ikke tænkt over hvad deres domæne skal hedde og man har jo lov at blive klogere. Derfor er det ikke unormalt at man ønsker at skifte domæne senere hen.
Der er dog en masse ting man skal huske når man flytter sit gamle domæne, og kan være katastrofalt ikke at tænke over.

Hvis man ser på Search Engine Optimization (SEO) / Søgemaskineoptimering, så er det vigtigt man ikke opsiger sit gamle domæne. Google og andre søgemaskiner har sandsynligvis fundet din side allerede, og indekseret den. Så det er vigtigt at alt dette ikke går tabt. Samtidigt giver de dig en rang baseret på alder, indhold, fejl, loadtid og meget andet.
Så hvis du beholder dit gamle domænenavn, men viderestiller det til dit nye domæne vil du kunne sørge for at alle dem der kommer ind på din gamle side nu bliver sendt til din nye side - og samtidigt så vil alle dem der finder dig via en søgemaskine stadig blive sendt til din nye side - så du ikke mister trafik eller kunder.

Du skal huske at bruge en 301 Moved permanently redirect. Dette fortæller Google og andre søgemaskiner at den nu skal videreføre din rang til dit nye domæne fordi du er flyttet.

Derudover kan du videreføre din query så de rammer den nye side der svarer til det du bad om.
Et lille eksempel:
Gamledomæne.dk/Produkter/ProduktOversigt.aspx
skal nu blive til
Nyedomæne.dk/Products/Overview/All/


Hvis du kan overføre query vil du overføre "/Produkter/ProduktOversigt.aspx" til dit nye domæne - så du kan modtage det og læse det og mappe det til din nye side.
I ASP.NET kan du i Global.asax sætte op regler for hvad du skal gøre. Således vil du på dit nye domæne modtage dette: Nyedomæne.dk/Produkter/ProduktOversigt.aspx
men fordi dit domæne ikke har denne sti vil det give en fejl - dog hvis du sætter en regel op i Global.asax vil du kunne se på hvad der requestes i QueryURL, og hvis det er lig ovenstående så kan du videresende den til din nye adresse.

Derudover kan du alternativt fortælle at domænet er flyttet, så hvis du kan se at "referer" er dit gamle domæne så fortæller du blot at du er flyttet. Information til brugerne.

Ved at sætte ovenstående op vil du bibeholde alt din trafik og kunder fra dit gamle domæne som vil komme til dit nye site, samtidigt med dit nye site vil få alt den rang og respekt den har opbygget igennem sin levetid.