in

DotNetMarche

.NET Framework User Group delle Marche

This Blog

Syndication

ExternalBlogs

December 2011 - Posts

  • Vulnerabilità di ASP.NET del 28 dicembre 2011, in grado di causare un DoS

    Ieri (28 dicembre 2011) è uscito l'annuncio di una vulnerabilità di ASP.NET presente su tutte le versione del .NET Framework. Se volete i dettagli, potete leggere tutto a questo indirizzo: http://technet.microsoft.com/en-us/security/advisory/2659883...
  • Il Client Object Model di SharePoint 2010 per applicazioni .NET

    Continua il nostro percorso di sviluppo su SharePoint 2010. Settimana scorsa abbiamo introdotto l'architettura e il funzionamento di base che sta dietro al Client Object Model, una delle novità della nuova versione per noi sviluppatori. Questa volta...
  • Come creare una webpart page da codice

    Una webpart page è una delle possibili pagine che possiamo creare all'interno di un sito SharePoint. Queste pagine, che esistono fin dalla versione 2003 del prodotto, si differenziano dalle application page in quanto permettono la modifica del proprio...
  • Video sullo sviluppo per SharePoint 2010 all'interno di Channel9

    Vi segnalo che da oggi, grazie alla disponibilità di Pietro Brambati , i miei video riguardo il percorso formativo per chi vuole imparare a sviluppare su SharePoint 2010 sono stati pubblicati anche su Channel9 . Per chi di voi che inizia ad approcciarsi...
  • Community Days 2012–Milano 16-17 febbraio

    Debbo dire che quest’anno il formato dei community days è veramente imponente, due interi giorni (tre sale dedicate alle sessioni + una dedicata ai lab) per trattare gli argomenti più caldi del momento che riguardano lo sviluppo .NET. Decisamente non si può mancare per cui correte ad iscrivervi

    600x220

    http://www.communitydays.it/events/communitydays-2012/

    Ricordate inoltre che per essere aggiornati su ogni novità è possibile seguire l’hashtag twitter #cdays12.

    Gian Maria.

  • Power tools TFS–December release

    Vi annuncio con un paio di gg di ritardo che il 15 dicembre è uscita la nuova versione dei Power Tools per Team Foundation Server, che trovate come al solito qui (http://visualstudiogallery.msdn.microsoft.com/c255a1e4-04ba-4f68-8f4e-cd473d6b971f) in caso abbiate disabilitato le notifiche degli update :).

    Buon fine settimana.

    Gian Maria.

  • Slide di powerpoint in Metro UI

    Mi sono voluto cimentare un pochino nel tentativo di fare delle slide sullo stile MetroUI, perchè a me personalmente piace molto e lo trovo decisamente pulito per fare delle slide leggibili e senza troppi fronzoli.

    Trovate le slide uploadate qui, e mi piacerebbe avere opinioni riguardo all’aspetto estetico.

    Ciaoooo.

    Gian Maria.

  • Community Days 2012 - Milano, 16 e 17 febbraio 2012

    Vi avevo già avvisato prima, ma ci tengo a ridirvelo.. che ASPItalia e UgiDotNet stanno organizzando veramente un gran bell'evento ;) In soldoni.. SharePointCommunity.it, in collaborazione con le altre community ed user group italiani, partecipa e...
  • Modificare la modalità di scadenza della password di Office 365

    E' da un pò che mi hanno attivato l'account su Office 365 dopo la fase beta e proprio oggi, cercando di accedere alla posta, Outlook mi ha avvisato di un malfunzionamento nel download dei nuovi messaggi dall'account Exchange Online rimandandomi...
  • .Net Campus 2012: iscrizioni aperte!

    Rieccomi qua dopo un periodo un pò incasinato. Sono stato fuori ufficio per un pò e purtroppo sono riuscito a scrivere poco, abbiate pazienza. In ogni modo.. si stanno per avvicinare dei periodi molto intensi e veramente pieni di belle cose. La prima...
  • Team Foundation Service (preview) - Beginner guide

    Non sapete cosa è Team foundation Service, male :), per cui colgo l’occasione di postare un link interessante sull’argomento.

    Per chi non sa cosa sia Team Foundation Service, si tratta di TFS on Azure, ovvero una istanza di Team Foundation Server hostata da microsoft su Azure, e disponibile quindi “on the cloud”. Attualmente è in fase di “preview”, ovvero si può accedere solamente con un codice di invito (ne trovate uno qui) e per ora, essendo in preview, è gratuito. Non si sa nulla del pricing (per cui non chiedete), ma potete intanto valutare il prodotto/servizio senza nessun costo e soprattutto è appena uscito un December Update che introduce nuove interessanti caratteristiche, per cui vale la pena inizare intanto a prenderci familiarità.

    Attualmente la versione che trovate online non è TFS2010, ma è la dev11, per cui avrete una interfaccia web totalmente rinnovata, veramente responsiva (tutta asincrona) e decisamente interessante. Se volete provare la nuova versione di TFS, attualmente un account di Team Foundation Service Preview è il modo più semplice.

    Per chi fosse interessato, a questo indirizzo trovate una serie di 5 link per prendere familiarità con questo nuovo prodotto.

    Happy Tfs on the cloud.

    Gian Maria.

  • Spring.NET REST Client

    Sono sempre stato un appassionato di soluzioni REST-ful e la nuova versione di Spring.NET REST Client costituisce a mio avviso un ottimo strumento per implementare il client di un qualunque servizio REST in maniera molto semplice e potente, non solo su...
  • Local VS Server workspaces nella prossima versione di TFS

    Sicuramente è stato già bloggato molto sull’argomento, ma vorrei comunque riportare questo post di Willy che illustra le differenze maggiori tra i due tipi di workspace (locale e server).

    http://blogs.msdn.com/b/willy-peter_schaub/archive/2011/11/30/team-foundation-server-trying-to-understand-server-versus-local-workspaces.aspx

    Sicuramente non è come avere un distribuito, ma sicuramente lavorare offline sarà comunque più semplice.

    Gian MAria.

  • Eseguire un assembly in un AppDomain separato

     Nello sviluppo di architetture a plugin può diventare necessario eseguire assembly in un AppDomain separato, magari recuperando gli assembly (con relative dipedenze) da una sottocartella.
    In rete si trovano tantissimi esempi, che usano metodi recenti o datati e che sfruttano varie tecniche. Sono però riuscito ad arrivare ad una soluzione che mi soddisfacesse, solo dopo molti tentativi e molte ricerche e quindi mi sembra giusto condividere i risultati della mia ricerca sperando che possano facilitare la vita a qualcuno.

    Prima di andare avanti vorrei però esplicitare le mie necessità:

    - Eseguire i metodi di una o più classi contenute all’interno di un assembly, in un AppDomain separato;
    - Poter caricare nell’AppDomain assembly con reference ad altri assembly “locali” o memorizzati nella GAC; 
    - Memorizzare l’assembly (con tutte le sue dipendenze) in una sotto directory;
    - Poter passare parametri al costruttore delle classi da creare.
     
    La funzione seguente, seppur molto semplice, soddisfa tutte le mie necessità:

       1: Public Sub ExecuteOnAppDomain(ByVal typeName As String, ByVal assemblyName As String)
       2:     Dim domainSetup As AppDomainSetup = New AppDomainSetup
       3:     domainSetup.ApplicationBase = Environment.CurrentDirectory
       4:     domainSetup.PrivateBinPath = "RELATIVE_FOLDER"
       5:     ' Copia delle policy dall'appdomain corrente
       6:     Dim adevidence As Evidence = AppDomain.CurrentDomain.Evidence
       7:     ' Creazione nuovo appdomain
       8:     Dim domain As AppDomain = AppDomain.CreateDomain("SomeAppDomain", adevidence, domainSetup)
       9:  
      10:     ' Argomenti costruttore
      11:     Dim constructorArgs As New List(Of Object)
      12:     constructorArgs.Add("PARAM1")
      13:     ' ....
      14:     ' ....
      15:     constructorArgs.Add(10)
      16:     ' Bindings
      17:     Dim bindings = BindingFlags.CreateInstance Or BindingFlags.Instance Or BindingFlags.Public
      18:     ' Creazione della classe dato il nome completo e l'assembly di riferimento
      19:     Dim obj = domain.CreateInstanceAndUnwrap(assemblyName, typeName, False, bindings, Nothing,
      20:                                              constructorArgs.ToArray, Nothing, Nothing, Nothing)
      21:     obj.DoWork()
      22:     ' Unload dell'appdomain
      23:     AppDomain.Unload(domain)
      24:   End Sub


    Alcune note:

    - Nella proprietà PrivateBinPath dell’AppDomainSetup è possibile specificare le sottodirectory da utilizzare per il probing degli assembly;
    - I parametri del costruttore devono essere specificati nello stesso ordine e devono avere lo stesso tipo di quelli presenti nel costruttore della classe da istanziare;
    - L’assembly name non deve contenere il suffisso “.dll” ma solo il nome dell’assembly;
    - Il typeName deve contenere il nome completo del tipo della classe da istanziare;
    - Tutti gli assembly referenziati devono essere inseriti nelle sottodirectory o nella directory principale del nostro applicativo (o nella GAC);
    - La risoluzione delle dipendenze viene fatta in automatico senza dover implementare nessun meccanismo manuale di risoluzione.

  • Lab per TFS

    Sono stati pubblicati da poco tre Virtual Lab sull’uso base di TFS. Li trovate listati qui, sono interessanti per chi si sta avvicinando al TFS e vuole familiarizzare con le basi.

    http://blogs.msdn.com/b/visualstudioalm/archive/2011/11/28/three-new-tfs-training-modules-at-msdn-virtual-labs.aspx

    Buon Lab :)

    Gian Maria.

Powered by Community Server (Commercial Edition), by Telligent Systems