Michells Mesterværk

Prototyping og eksportering med SketchFlow i Silverlight

by Administrator 29. January 2010 11:10

Jeg har lige lavet min første SketchFlow applikation, og udover mine manglende evner til at designe noget som helst, så gik det faktisk rigtig godt. SketchFlow er noget der følger med i Silverlight 3 samt Expression Blend 3, som gør det muligt at lave prototyper af…ja, faktisk alle former for software. Du kan importere billeder i Adobe’s formater samt powerpoint filer, for nemmere at skabe et flow samt og design i ens kommende applikation og linke de såkalde “screens” sammen med hinanden for at give en heldhed af applikationen.

Prototypen kan du se i en browser, andre kan skrive kommentarer til den, sende kommentarerne tilbage til udvikleren og indlæse dem direkte i Blend. Det er faktisk ret gennemført. Udover det kan du også eksporter både prototype og feedback til word og sende det til kunden for gennemgang. Alt i alt et ret skarpt produkt som kan spare dig rigtig mange timer i starten af et projektforløb.

Her er en kort billedeserie af forløbet.

5 (opret nyt sketchflow projekt)

1 (definer og lav dine “screens”)

3 (overblik over screens)

4 (se din app i en browser og skriv kommentarer til de forskellige screens)

2   (kommentar felt med forskellige muligheder)

6 (feedback vindue i expression blend)

7 (eksporter til word)

Her kan du læse mere omkring SketchFlow og Silverlight.

Tags:

VS2010

Læs excel fil med C#

by Administrator 28. January 2010 14:20

Jeg sidder til tider og bikser med excel ark, og nogle gange er jeg nødt til, ad-hoc, at flytte data fra excel til evt. en database eller xml fil. At arbejde med excel fra .NET er noget bøvl synes, ihvertfald med de indbyggede COM objekter. Selvom vi har fået dynamics og optionelle parametre, synes jeg stadigvæk det halter.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Office.Interop.Excel; 
namespace ExcelReader
{
    class Program
    {
        static void Main(string[] args)
        {
            Application application = new Application();
            
            Workbook workbook =
                application.Workbooks.Open(@"C:\BloggersAndInfluencers.xlsx");

            try
            {
                Worksheet worksheet = 
                    (Worksheet)workbook.Worksheets.get_Item("Sheet1");
                
                Range range = worksheet.get_Range("A1", "A100" );

                foreach (Range item in range)
                {
                    if(item.Value2 != null)
                        Console.WriteLine(item.Value2.ToString());
                }
                Console.ReadLine();

                releaseObject(worksheet);
            }
            finally {
                workbook.Close();
                application.Quit();

                releaseObject(workbook);
                releaseObject(application);
            }
        }

        private static void releaseObject(object obj)
        {
            try
            {
                System.Runtime.InteropServices.Marshal.ReleaseComObject(obj);
                obj = null;
            }
            catch (Exception ex)
            {
                obj = null;
            }
            finally
            {
                GC.Collect();
            }
        }
    }
}

Tags:

Automatisk start af web applikationer

by Administrator 28. January 2010 11:23

Første gang man requester en ASP.NET applikation kan der, afhængigt af hvor meget data den skal loade etc., tage en del tid før man rent faktisk får siden frem. Det kan være et problem som ikke er let at komme udenom – før nu.

Med ASP.NET 4.0 og en IIS 7.5 kan du “varme” din applikation op før den rent faktisk bliver kaldt.

For at bruge denne feature skal du slå “application warm up” til i din applicationHost.config fil under system32\inetsrv\config:

<applicationPools>
  <add name="MyApplicationPool" startMode="AlwaysRunning" />
</applicationPools> 

En application pool kan indeholde mange forskellige applikationer/sites og derfor kan det være du også skal specificere hvilke sites denne feature skal berøres af.

<sites>
  <site name="MySite" id="1">
    <application path="/" 
      serviceAutoStartEnabled="true"
      serviceAutoStartProvider="PrewarmMyCache" >
      <!-- Additional content -->
    </application>
  </site>
</sites>

<!-- Additional content -->

<serviceAutoStartProviders>
  <add name="PrewarmMyCache"
    type="MyNamespace.CustomInitialization, MyLibrary" />
</serviceAutoStartProviders>

For hver applikation der er sat op til at starte automatisk, sender IIS’n en et request til den pågældende ASP.NET applikation som fortæller at applikatsom skal starte i en state hvor den ikke kan modtage requests. Du kan oprette en auto-start type med det nødvendige end-point ved at implementere IProcessHostPreloadClient interfacet:

public class CustomInitialization : System.Web.Hosting.IProcessHostPreloadClient
{
  public void Preload(string[] parameters)
  {
    // Perform initialization. 
  }
}

Når denne metode returner, så er din applikation klar til at modtage requests.

Denne feature kræver IIS 7.5 som i skrivende stund kun findes på en Windows 2008 R2 server.

Tags:

VS2010

Object caching med .NET 4.0

by Administrator 28. January 2010 10:28

I .NET 4.0 er der kommet et helt nyt caching namespace og assembly. System.Runtime.Caching hedder namespacet og under det namespace ligger der en række abstrakte typer til udvikling af egne caching mekanisker samt et konkret API du kan bruge i din applikation, når du vil cache.

Den nye MemoryCache er bygget udfra ASP.NET caching, som igennem årene har været så populær, at mange også bruger det konkrete ASP.NET caching API i f.eks WPF eller WebForms. Nu har vi altså fået et bredere API der er beregnet til brug i alle former for applikationer.

Her er et simpelt eksempel:

string contents = string.Empty;

ObjectCache memCache = MemoryCache.Default;

if (memCache["persons"] == null) {
    string filepath = Server.MapPath("persons.txt");

    CacheItemPolicy itemPolicy = new CacheItemPolicy();
    itemPolicy.AbsoluteExpiration = new DateTimeOffset(DateTime.Now.AddSeconds(30));
    itemPolicy.ChangeMonitors.Add(
        new HostFileChangeMonitor(new List<string> { filepath }));

    contents = File.ReadAllText(filepath);
    memCache.Set("persons", contents, itemPolicy);
}

Response.Write(contents);

Her opretter vi en instans af en ObjectCache, tjekker for en nøgle og indsætter evt. noget data fra en fil. Hvis filen senere bliver opdateret så opdateres cachen, det er HostFileChangeMonitor der er skyld i det. Når cachen udløber bliver der ligeledes opdateret.

Tags:

VS2010

RedirectPermanent i ASP.NET 4

by Administrator 26. January 2010 14:12

Når man flytter content rundt på sit site, laver man ofte nye links, og eventuelle Response.Redirect’s fra de gamle links der matcher disse nye links. Det har alle vidst gjort en eller flere gange i deres karriere. Problemet med Response.Redirect er at den giver browseren en HTTP status kode (302) hvilket resultere i et ekstra round-trip til serveren.

I ASP.NET 4 har vi fået en hjælpe-metode ved navn RedirectPermanent som giver browseren den mere korrekte statuskode (301) samt eliminere den ekstra roundtrip.

Du kalder blot:

RedirectPermanent("/newpath/foroldcontent.aspx"); 

Tags:

VS2010

ASP.NET websitet skal bygges på Umbraco

by Administrator 25. January 2010 10:13

Jeg kan huske tilbage i 2003 hvor Niels Hartvig havde inviteret til offentlig gennemgang af den nyeste Umbraco version. Umbraco kørte dengang på ASP.NET 1.1, og jeg husker tydeligt hvor begejstrede de 20 fremmødte var for projektet. Det var første gang jeg for alvor stiftede bekendskab med Open Source på .NET, og siden dengang må man sige, at har Umbraco været et fyrtårn for mange andre open source projektet på .NET. (jeg kan også huske de gang Niels fik en “yellow screen of death” under mødet)

Umbraco er idag en veletableret virksomhed med et super dygtigt core-team i ryggen. De afholder hvert år deres Code-Garden konference og et utal af meetups’s overalt i verden. Det er virklig fedt at følge med på sidelinien og se alt det gode og positive der kommer ud af de mennesker bag Umbraco. Sådan!

logo-umbraco-2009-05

Microsoft har også været vilde med projektet, og det er bla. blevet “highlighted” på PDC og MIX og jeg ved at Niels og dele af ASP.NET teamet har haft et gode og sjove møder undervejs. Nu har Microsoft så selv valgt at bygge et meget stort site ovenpå Niels Hartvigs baby.

ASP.NET websitet som har mange millioner besøgende skal indenfor kort tid bygges på Umbraco. Jeg har vidst det noget tid men det er først nu Scott Guthrie offentligt har sagt at “det gør vi”. Jeg synes det beviser noget af Microsoft ift. open source og jeg synes det kæmpe stort for Niels og hans partner-in-crime Per. Tillykke drenge, det er virklig godt gået!!!

Tags:

Konkurrence: Vind en MIX10 billet + hotel i Las Vegas d. 15-17 Marts.

by Administrator 25. January 2010 09:33

Fordi det snart er tid til at tage til MIX i Las Vegas, vil jeg gerne udlode en billet samt hotel til en heldig vinder.

For at deltage skal du læse reglerne samt uploade en app’ til 10K på MIX sitet, det skal du have gjort inden på Lørdag (d. 30).

Senest Søndag (d. 31) skal du sende mig en email med emne “Vind en MIX billet” samt et link til din applikation og kontakt informationer.

Vi bedømmer de applikationer vi modtager udfra dem der er mest orginal, funktionel og teknisk svær.

Hvis du vinder betaler vi din indgangsbillet og dit hotel under hele MIX konferencen.

clip_image002

Held og lykke!

Tags:

Udvikleren.dk

Welcome to BlogEngine.NET 1.6.0

by Administrator 24. January 2010 00:00

If you see this post it means that BlogEngine.NET 1.6.0 is running and the hard part of creating your own blog is done. There is only a few things left to do.

Write Permissions

To be able to log in to the blog and writing posts, you need to enable write permissions on the App_Data folder. If you’re blog is hosted at a hosting provider, you can either log into your account’s admin page or call the support. You need write permissions on the App_Data folder because all posts, comments, and blog attachments are saved as XML files and placed in the App_Data folder. 

If you wish to use a database to to store your blog data, we still encourage you to enable this write access for an images you may wish to store for your blog posts.  If you are interested in using Microsoft SQL Server, MySQL, VistaDB, or other databases, please see the BlogEngine wiki to get started.

Security

When you've got write permissions to the App_Data folder, you need to change the username and password. Find the sign-in link located either at the bottom or top of the page depending on your current theme and click it. Now enter "admin" in both the username and password fields and click the button. You will now see an admin menu appear. It has a link to the "Users" admin page. From there you can change the username and password.  Passwords are hashed by default so if you lose your password, please see the BlogEngine wiki for information on recovery.

Configuration and Profile

Now that you have your blog secured, take a look through the settings and give your new blog a title.  BlogEngine.NET 1.4 is set up to take full advantage of of many semantic formats and technologies such as FOAF, SIOC and APML. It means that the content stored in your BlogEngine.NET installation will be fully portable and auto-discoverable.  Be sure to fill in your author profile to take better advantage of this.

Themes and Widgets

One last thing to consider is customizing the look of your blog.  We have a few themes available right out of the box including two fully setup to use our new widget framework.  The widget framework allows drop and drag placement on your side bar as well as editing and configuration right in the widget while you are logged in.  Be sure to check out our home page for more theme choices and downloadable widgets to add to your blog.

On the web

You can find BlogEngine.NET on the official website. Here you'll find tutorials, documentation, tips and tricks and much more. The ongoing development of BlogEngine.NET can be followed at CodePlex where the daily builds will be published for anyone to download.

Good luck and happy writing.

The BlogEngine.NET team

Tags: ,

BlogEngine.NET

MIX i Las Vegas fra d. 15 – 17 Marts

by Administrator 22. January 2010 12:32

Der er et par måneder til at MIX10 løber af stablen, og hvis du ikke allerede har bestilt din billet, så lad mig gøre rede for hvorfor du skal tage afsted.

MIX er udelukkende en webudvikler og webdesigner konfernece der bliver afholdt midt i en ørken, nærmere betegnet Las Vegas. Jeg ved at vores helt egen Silverlight elsker, Niels Hartvig har været afsted, endda lejede han en Ferrari da han ankom (sådan er det at lave Open Source på vores platform). Jeg husker Niels’ indtryk af konferencen som værende rigtige gode, men i kan jo spørge ham selv.

Faktisk er MIX også den billigste Microsoft konference du kan deltage i, den koster i skrivende stund kun 995USD. Altså lige omkring 5.000 Danske kroner. Og hvis du er studerende kan du komme ind for 595USD. Så er der selvfølgelig lige en flybillet og et hotel der skal lægges oveni, men Momondo siger de kan finde en flybillet til 4.500kr retur, og et hotel kan du booke for 3000kr for 3 dage. Ialt vil det løbe op i små 12.500kr. Udover det skal du jo også regne med et par aftenmåltider og en tur på casino (sammen med Sam ‘Ace’ Rothstein).

logo

Det vigtigste på konferencen er naturligvis det indhold du vil blive eksponeret overfor. Det er altså ikke småting. Der kommer til at ske spændende ting omkring Mobile, Silverlight, MVC og resten af teknologi paletten, og der bedste synes jeg, er at der er intet på agendaen der “lugter” af IT-pro, administration eller andre ikke-udvikler/designer relaterede emner.

  • .NET
  • AJAX
  • ASP.NET
  • Bing
  • Cloud
  • Embedded
  • Expression
  • Media
  • Mobile
  • Open Standards
  • SharePoint
  • Silverlight
  • UX
  • Windows 7
  • Windows Azure
  • Windows Phone
  • Workshop
  • Hvad venter du på ??? 

    Vi ses forhåbentligt i ørknen til Marts.

    Tags:

    Areas i MVC 2.0

    by Administrator 22. January 2010 10:14

    Tags:

    VS2010

    DataAnnotations i MVC 2.0

    by Administrator 21. January 2010 10:24

    Tags:

    VS2010

    Sådan signer du dit MSDN abonnement op til Windows Azure.

    by Administrator 10. January 2010 17:11

    Til jer der har et MSDN abonnement, her er en guide til hvordan i får adgang til vores cloud platform Windows Azure.

    untitled

    Læs resten af guiden her.

    Tags:

    Cloud computing forklaring

    by Administrator 9. January 2010 10:44

    En genial video og præsentation lavet af min kollega René Løhde.

     

    Hvad er Cloud Computing? from Rene Lohde on Vimeo.

    Tags:

    VS2010

    Vil du have et job hos Microsoft ?

    by Administrator 8. January 2010 12:04

    Microsoft er gentagne gange blevet kåret som Danmarks bedste arbejdsplads, og hvis du spørger mig har prisen været fuldt fortjent hver gang. Personligt er jeg ikke kun glad for at arbejde i en virksomhed som gør rigtig meget for at holde på sine medarbejder og som virklig sørger for at man har det godt både på og udenfor arbejdspladsen. Microsoft bør være et godt eksempel for andre virksomheder at måde efter, ihvertfald ift. arbejdsliv. Jeg har aldrig været set eller prøvet at arbejde i en virksomhed som var så fleksibel og fri i dens kultur. Der er altid en god tone på gangen, i kantinen og her mangler aldrig noget som helst. Med andre ord, vi har det super godt. Stedet giver dig rent faktisk lyst til at gå på arbejde og yde den indsats det kræver for at nå i mål, også selvom man er stresset og har travlt. Det må simpelthen være en af grundende til at Microsoft har haft så stor success de sidste 20 år.

    Engang imellem må man spørge sig selv om hvad man får ud af at gå på arbejde ? Andet end den løn man naturligvis gør sig fortjent til ? Bør der ikke være mere end løn for at arbejde ? Man arbejder trods alt mere end man er hjemme, for at være sammen med sin familie, kæreste, børn osv. Jeg synes seriøst det er vigtigt at spørge sig om dette engang imellem, fordi man oftest lægger 7-80% af sin energi i sit arbejde. Hos Microsoft bruger vi et system der kaldes Work-Life-Balance som går op i netop dette´og som fungere glimrende.

    Vi har en masse personalegoder som man kan benytte sig af. Bla. massage, aktier, klipning, rensning af tøj og en masse andet lækkert som man kan benytte sig af efter behov.

    Alt i alt udgør alle vores goder og muligheder det som kendetegner en sund og god arbejdsplads. Og derfor vil jeg gerne fortælle jer at vi bla. søger udviklere, og ydermere hjælpe dem af jer, der kunne tænke sig at prøve kræfter med verdens største software virksomhed. Herunder finder du stillinger som måske passer til din profil.

    Hvad tilbyder Microsoft i Vedbæk

    Microsoft Development Center i Vedbæk er et af de største Microsoft udviklingscentre udenfor USA. Vi tilbyder et internationalt arbejdsmiljø som er beskrevet ovenover og som er yderst fleksibelt. I Vedbæk er der er en uformel atmosfære men der arbejdes hurtigt og professinelt. Vi tilbyder en yderst attraktiv løn som vi svare til dine færdigheder.

    jobOpening

    Software Development Engineer og Test

    Microsoft Dynamics produktgruppe har en række åbne positioner indenfor Software Development Engineers for Test (SDET). Disse positioner giver enestående muligheder for fagfolk med forskellig teknisk baggrund til, at arbejde på et af de hurtigst voksende Enterprise Resource Planning (ERP) produkter på markedet.

    Krav:

    Softwareudvikling erfaring, især inden for C #, C + + eller lignende objektorienterede programmeringssprog, stærke tekniske og analytiske evner, fremragende problemløsning og design færdigheder. Evne til at arbejde selvstændigt - og i teams. En fremragende beherskelse af skriftlig og mundtlig engelsk.

    Vi søger ingeniører med en stærk baggrund inden for objektorienteret udvikling. Erfaringen med business-applikationer eller ERP-løsninger er et plus. Gerne en akademisk grad inden for datalogi, teknik, matematik eller fysik.

    Ansvarsområder:

    Skriv og gennemgå tekniske krav og design dokumenter. Planlægning, design, og skrive kode til automatiseret test af funktioner indenfor “Core ERP”, præsentationslag eller Dynamics platformen. Oprette og bruge test-værktøjer og processer til både øge effektiviteten i det daglige arbejde og sikre kvaliteten af produktet.

    Samarbejd med andre ingeniører for at opnå det ønskede høje niveau af innovation og kvalitet, vores kunder efterspørger.

    Program Manager

    Krav:

    Softwareudvikling erfaring, især inden for C #, C + + eller lignende objektorienterede programmeringssprog, stærke tekniske og analytiske evner, fremragende problemløsning og design færdigheder. Evne til at arbejde selvstændigt - og i teams. En fremragende beherskelse af skriftlig og mundtlig engelsk.

    Vi søger ingeniører med en stærk baggrund inden for objektorienteret udvikling. Erfaringen med business-applikationer eller ERP-løsninger er et plus. Gerne en akademisk grad inden for datalogi, teknik, matematik eller fysik.

    Ansvarsområder:

    Planlægning, design, og skrive kode til funktioner inden for Core ERP, præsentationslaget eller Dynamics platformen. Skriv og gennemgå tekniske krav og design dokumenter. Samarbejd med andre ingeniører for at opnå det ønskede høje niveau af innovation og kvalitet, vores kunder efterspørger.

    Test Manager

    Krav:

    -Stærk i software design, OOP og databasesystem erfaring.
    -4 + års erfaring med C # og / eller C + +
    -Færdigheder i test-arkitektur, design og implementering.
    -Rigtig god til kommunikation og på tværs af grupperne og samarbejdefærdigheder.
    -Track record på anvendelsen af kreativitet og innovation til test domæne.
    -Passion for dyrkning af en højtydende team.
    -3 + Års erfaring med ledelseserfaring.
    -8 + Års erfaring med udvikling og afprøvning kommerciel software.
    -ERP-ansøgning erfaring er et plus.

    Ansvarsområder:

    -Lede et team på 15-20 mand, der skal bygge den næste generation af servere, værktøjer og funktioner til Dynamics NAV.
    -Mentor og vokse SDET Leads.
    -Give arkitektonisk støtte og best-pratice.
    -Gennemføre best-practice for at forbedre team effektivitet.
    -Revision af specifikationer og test planlægning for at sikre at vi tester de rigtige funktioner.
    -Drive testability og sikre en effektiv automatisering af komponenter.
    -Drive testværktøjs-innovation for gruppen der understøtter test strategi og produktudvikling.

    Hvordan ansøger du ?

    Du sender mig en email på danielmf@microsoft.com med job-titel som subject. I emailen skal der være vedhæftet et færdigt CV på engelsk.

    Derefter tager jeg fat i vores vedbæk recruiter og sørger for han kigger igennem din ansøgning.

    Har du spørgsmål kan du sende dem til mig også.

    Bemærk

    Der er mere end 3 åbne stillinger!

    Jeg kan ikke garantere at du kommer til samtale eller bliver ansat :)

    Tags:

    Kom til gratis web-partner møde i Hellerup d. 20/1.

    by Administrator 7. January 2010 14:18

    Jeg har hermed den fornøjelse at invitere dig til næste møde for web-partnere, som foregår i Hellerup den 20. januar 2010.

    Det er et gratis eftermiddagsmøde, hvor vi fokuserer på de nyeste udviklingsværktøjer. Der fokuseres en del på det tekniske, så det kunne måske være relevant for en del af dine folk. I må gerne komme flere fra samme virksomhed.

    Tilmeld dig/jer med et Windows Live Id lige her.

    Her ser du en vejledende agenda:

    Kl. 14.00            Velkommen til: Nyheder for web-partnere

    · Partnerfordele indenfor web området – ved Jes Allersted og Nana Bule, Microsoft

    Kl. 14:15            ISS 7.0 på Windows Server

    · Lær om handlers, modules, trace routes og meget andet lækkert på din IIS (Windows 2008 R2 server). Ved, Daniel Frost, Microsoft.

    Kl. 15.00            Pause

    Kl. 15:15            ASP.NET MVC

    · Se hvordan ASP.NET MVC passer rigtig godt ind i enhver web udviklers drøm. Ved, Daniel Frost, Microsoft.

    Kl. 16:00            Udvikling af rigere web applikationer - session 2

    · Teknisk session omkring Silverlight 4 – ved Thomas Martinsen, Tenteo

    Kl. 16.45            Wrap-up – web-partner muligheder

    kl. 17.00            Slut

    I må gerne skynde jer at tilmelde jer – beklager den relativt kort tilmeldingsfrist. Glæder mig til at høre fra dig om det kan lade sig gøre.

    Vel mødt!

    Tags:

    “Silverlight 4 kursus” – én af dem tak…

    by Administrator 5. January 2010 14:11

    Mandag d. 1 Februar afholder de 2 Danske Silverlight guruer “Thomas & Thomas” et kursus som spænder over 4 dage. Det er et kursus som du ikke finder andre steder og de instruktører tager udgangspunkt i den nyeste Silverlight 4 teknologi som dog stadig kun er i Beta. På kurset vil du lære alt fra integration mellem eksisterende ASP.NET applikation til line of business applikations-udvikling. Kurset har mindre fokus på video, lyd og animation, men altså mere forkus på hvordan man rent praktisk bygger en applikation i Silverlight 4.

    microsoft-silverlight-logo

    Du kan se mere om hvad du lærer ved at deltage, samt prisen for deltagelse ved at klikke her.

    Tags:

    Stort tillykke til vores nye MVP, Søren Spelling Lund.

    by Administrator 5. January 2010 13:53

    I starten af December måned modtog jeg en email med kontakt oplysninger til samtlige Danske MVPer. Det havde specifikt bedt om, da jeg gerne ville i kontakt med dem for at arrangeere en frokost i det nye år. Nederst på listen figurerde et navn jeg normalt ikke har set i forbindelse med de Danske MVPer, men til begejstring var det et navn jeg kendte og som jeg gerne havde set komme i MVP trøjen lidt tidligere. Søren Spelling Lund er den primære drivkraft i det man nemt kan kalde den bedst etablerede og mest velfungerende Danske .NET User Group ved navn ANUG. Jeg synes det er super stærkt og rigtig flot gået af Søren og det team som hjælper ham med at gøre ANUG til virklighed. Det er bestemt ikke småting der er kommet ud af den gruppe af mennesker, og jeg kan slet ikke se hvordan communitiet ville være uden jer.

    Jeg har modtaget mange henvendelser omkring netop MVP programmet i løbet 2009, størstedelen for at høre hvordan de blev nomineret og hvad det krævede. Søren er endnu et glimrende eksempel på hvad det kræver at blive MVP. Nemlig benhårdt arbejde.

    Endnu engang et stort tillykke med titlen fra hele DPE teamet i Danmark.

    Tags:

    Powered by BlogEngine.NET 1.6.0.0
    Theme by Mads Kristensen