mercoledì 17 luglio 2013

Aggiornare complex type in entity framework 4

1) Caricare il file .edmx nel solution explorer
2) cliccare con il tasto destro in una parte vuota del modello edmx e scegliere aggiorna dal database e infine cliccare su finish
3) aprire il model browser
4) aprire la voce function import
5) selezionare le stored procedure da aggiornare
6) cliccare sul tasto destro e poi edit
7) cliccare su  "Get Column Information" e seezionare il complex type da aggiornare e infine cliccare su update....

Tanto per ricordare la cosa la prossima volta

lunedì 28 gennaio 2013

Ritorno al futuro

Oggi leggo un annuncio di lavoro: programmatore senior android, 4 anni di esperienza nel ruolo...
Dato che i primi cellulari con android sono del 2009, e android è del 2008, l'esperienza di 4 anni è stata fatta indietro nel futuro o avanti nel passato.

L'altra ipotesi è che chi fa queste richieste non sa cosa scrive e mi pare decisamente più probabile.


venerdì 25 gennaio 2013

Lavori in corso

Dopo un pò di tempo si ritorna.

I lavori che sto seguendo sono l'aggiornamento del portale alla versione 4 di asp.net mvc. Con l'occasione tutta l'interfaccia del backoffice verrà rinnovata con un ampio uso di javascript e ajax. Altra innovazione sarà l'implementazione di messaggi flash con l'uso di SignalR.
Il secondo progetto invece è una piattaforma di cms basata su codeigniter, il php è sempre divertente da usare.

Devo riprendere un pò di discorsi.

lunedì 24 settembre 2012

Capra e cavoli

Non è possibile, inutile tentativo che porta a perdere sempre inevitabilmente l'intera posta.

"Ho riflettuto molto sulla nostra rigida ricerca, mi ha dimostrato come ogni cosa sia illuminata dalla luce del passato… dall'interno guarda l'esterno, come dici tu alla rovescia… in questo modo io sarò sempre lungo il fianco della tua vita e tu sarai sempre lungo il fianco della mia vita."

lunedì 18 giugno 2012

Dependency Injection

"E' un pattern che permette di eseguire la scelta di un componente a run-time invece che nella compilazione. Un tipico utilizzo è quello del caricamento dinamico di un plugin o per effettuare il caricamento di oggetti sostitutivi in ambiente di test al posto di quelli che verrebbero caricati nell'ambiente di produzione".

E questa è più o meno la definizione. Vediamo un esempio.


Supponiamo di avere una classe Auto e una classe derivata Fiat.


class AutoSelector {
        Auto fiatAuto = null;
        public AutoSelector() {}



il reference fiatAuto è la dependency (dipendenza)



class AutoSelector {
        Auto fiatAuto = null;
        public AutoSelector(Fiat fiat) 
        {
             fiatAuto=fiat;
         }
}


ecco che abbiamo effettuato una dependency injection sull'istanza della variabile fiatAuto.


Abbiamo creato un forte accoppiamento tra il nostro codice e la classe Fiat...  E se noi volessi creare un sistema per scegliere quale classe di auto utilizzare?
La soluzione è accoppiare la Dependency Injection al pattern Factory e utilizzare un file di config. Quindi utilizzare un componente esterno che tramite un file di config va a costruire gli oggetti e le dipendenze.