ASP.NET Dynamic Data - alcuni link

by Andrea 7/20/2008 10:43:00 PM

Ecco alcuni link che possono essere utili a chi stà provando ad utilizzare i Dynamic Data:

Using ASP.NET Dynamic Data with ObjectDataSource
http://blogs.msdn.com/.../using-asp-net-dynamic-data-with-objectdatasource.aspx

Dynamic Data and the Associated Metadata Class
http://blogs.msdn.com/.../dynamic-data-and-the-associated-metadata-class.aspx

How to add Dynamic Data to an Existing Web Site
http://blogs.msdn.com/.../how-to-add-dynamic-data-to-an-existing-web-site.aspx

How to add Dynamic Data to an Existing Web Application
http://blogs.msdn.com/.../how-to-add-dynamic-data-to-an-existing-web-application.aspx

A DynamicData Attribute Based Permission Solution using User Roles
http://csharpbits.notaclue.net/2008/05/introduction-this-project-is-going-to.html

Ed ecco i blog da seguire per rimanere aggiornati sulle novità dei Dynamic Data:

Technorati Tags: ,

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

ASP .NET

Slide e Codice ultimi meeting

by Andrea 7/9/2008 5:07:12 PM

In questi giorni è stato pubblicato il meteriale (slide e codice) degli utlimi meeting. Mi spiace per il ritardo, ma gli impegni che abbiamo avuto in questo periodo non erano pochi.

Ecco i link agli eventi che sono stati aggiornati, dove potrete trovare le slide e il codice degli esempi:

Per qualsiasi domanda, o dubbio relativo ai vari argomenti e/o al materiale, non esitate a contattarmi.

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

XeDotNet | ASP .NET

Grazie Grazie Grazie

by Andrea 6/24/2008 11:39:11 AM

TeamSuite E’ proprio vero, gli amici riescono sempre a stupirti…o almento è quello che è capitato a me, quando all’ultimo Community Meeting di XeDotNet, Davide Vernole e Andrea Boschin mi hanno voluto premiare per (questo è quello che hanno detto) il mio impegno verso la community, regalandomi una cosa che per uno sviluppatore vale come l’oro: Microsoft Visual Studio Team System 2008 Team Suite + MSDN Premium Subscriptions.

Li ringrazio davvero di cuore perchè per me è stata una sorpresa davvero enorme, e che saprò far fruttare.

Ma non è tutto qui.
Da poco più di un mese ho aperto partita IVA, e sebbene ancora lavoro come dipendente, almeno inizio ad avvicinarmi al mondo della consulenza e del lavoro autonomo (e chissa che prima o poi riesca a fare completamente il salto). Ecco quindi un motivo in più che può far capire quanto sia prezioso per me questo premio.

GRAZIE a Davide!!
GRAZIE ad Andrea!!
e GRAZIE a tutte le persone che rendono XeDotNet un vera community!!

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

XeDotNet | Microsoft | +1

Vasco Rossi 08 - San Siro - 7 Giugno 2008

by Andrea 6/6/2008 12:35:19 PM

vasco08 E domani si parte

Io, la mia ragazza, 2 coppie di amici

Destinazione San Siro (Milano)

Il biglietto è pronto

vasco_live_2008_imgOrmai ci siamo

Un autobus

Vasco

80.000 persone

 

Technorati Tags: ,

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: , ,

Tempo libero

Passaggio a BlogEngine. Addio WordPress

by Andrea 5/30/2008 11:23:52 AM

Era da tempo che avevo iniziato la cosa, ma per un motivo o per un'altro avevo sempre posticipato. Ecco che ora il mio blog gira su BlogEngine e non più su WordPress.

Perchè questo?
Semplice perchè BlogEngine è sviluppato in .NET e questo mi permette di personalizzarlo e aggiungergli funzionalità a mio piacimento, senza dipendere da plugin di terze parti.
WordPress è una piattaforma di blog davvero stupenda, e credo proprio di poter dire che è la migliore che conosca, e la consiglierei a tutti....ma purtroppo è in PHP e non ho la voglia (e il tempo) di approfondirlo come argomento (dite pure che è pigrizia). Ecco il motivo di questo cambiamento.
In questo modo avrò anche la possibilità di testare le ultime tecnologie riguardanti il mondo del .NET Framework direttamente nel mio blog, e non è una cosa da poco.

Cambia il blog e cambia anche il dominio.
Il nuovo dominio ora è http://blog.dottor.net perchè il target del mio blog è un pò cambiato da quando ho iniziato, e "il silenzio di un urlo" ha poco a che vedere con i post relativi alle tecnologie Microsoft .NET.
Ma non ho intenzione di far morire quel dominio perchè ci sono proprio affezionato...lo terrò quindi per qualche idea/progetto futuro (che non si sa mai).

Dal vecchio blog è attivo un redirect (redirect 301) che ridirige i vecchi url verso quelli nuovi (e per questo rigrazio Roberto che mi ha dato una mano a riguardo), e spero di esser riuscito a redirigerli tutti. Spero poi che google mi dia una mano, a riposizionare il mio nuovo blog allo stesso livello di quello vecchio, per permettervi di trovare velocemente i miei vecchi post.

Il feed invece rimane invariato, e per chi non lo ha ancora sottoscritto, ecco qui: http://feeds.dottor.net/ilsilenziodiunurlo

Inoltre, se riscontrate qualche problema, non esitate a contattarmi.

Technorati Tags: ,

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: , ,

.NET | Sito

ASP.NET Dynamic Data - Custom Page

by Andrea 5/22/2008 10:05:28 PM

Come abbiamo vsito nel precedente post (Dynamic Data - Per iniziare), le pagine renderizzate sono basate su dei template che sono contenuti all'interno della cartella /DynamicData/PageTemplate/.
I template che abbiamo a disposizione sono:

  • Details.aspx
  • Edit.aspx
  • Insert.aspx
  • List.aspx
  • ListDetails.aspx

queste pagine utilizzano i classici controlli di ASP.NET (e ulterioli controlli contenuti nei Dynamic Data) che permettono di renderizzare in modo dinamico le informazioni presenti nel DataContext.

Ma nel caso volessimo personalizzare queste pagine per una determinata classe?

WebSiteFolder 1- All'interno della cartella /DynamicData/CustomPage/ creiamo una cartella con il nome della tabella di cui vogliamo personalizzare la visualizzazione, per esempio per Products dovremo creare la cartella
/DynamicData/CustomPage/Products/.

2- Copiare il template che si desidera modificare all'interno della cartella appena creata. Per esempio, per modificare la pagina di visualizzazione prodotti si dovrà copiare la pagina List.aspx in /DynamicData/CustomPage/Products/List.aspx.

3- Ora si può modificare a piacimento la pagina List.aspx appena creata. Si potrà sostituire il controllo GridView con un DataList, oppure modificare la GridView visualizzando solamente determinate colonne.
Per visualizzare in modo automatico i controlli di edit e visualizzazione i modo dinamico a seconda del tipo di DataField che andremo a bindare, i Dynamic Data introducono dei nuovi controlli, che sono per esempio i DynamicControl e il DynamicField. Questi controlli hanno la capacità di renderizzare il controllo apposito a seconda del tipo di dato che dovranno visualizzare, e creeranno anche tutti i validatori necessari.
Andremo in dettaglio su questi controlli in uno dei prossimi post.

<asp:GridView ID="GridView1" runat="server" 
    DataSourceID="GridDataSource"
    AllowPaging="True" 
    AllowSorting="True"
    CssClass="gridview" 
    AlternatingRowStyle-CssClass="even" 
    AutoGenerateColumns="false">
    <Columns>
        <asp:TemplateField>
            <ItemTemplate>
                <asp:HyperLink 
                    ID="EditHyperLink" 
                    runat="server"
                    NavigateUrl='<%# table.GetActionPath(PageAction.Edit, GetDataItem()) %>'
                    Text="Edit" />&nbsp;
                <asp:LinkButton 
                    ID="DeleteLinkButton" 
                    runat="server" 
                    CommandName="Delete"
                    CausesValidation="false" Text="Delete"
                    OnClientClick='return confirm("Are you sure you want to delete this item?");'/>&nbsp;
                <asp:HyperLink 
                    ID="DetailsHyperLink" 
                    runat="server"
                    NavigateUrl='<%# table.GetActionPath(PageAction.Details, GetDataItem()) %>'
                    Text="Details" />
            </ItemTemplate>
        </asp:TemplateField>
        <asp:DynamicField DataField="ProductName" HeaderText="Nome Prodotto" />
        <asp:DynamicField DataField="UnitsInStock" HeaderText="Unità"  />
        <asp:DynamicField DataField="Discontinued" HeaderText="Produzione"  />
    </Columns>
 
    <PagerStyle CssClass="Footer"/>        
    <PagerTemplate>
        <asp:GridViewPager runat="server" />
    </PagerTemplate>
    <EmptyDataTemplate>
        There are currently no items in this table.
    </EmptyDataTemplate>
</asp:GridView>

Ecco come in semplici passi siamo riusciti a personalizzare una precisa pagina, potendola modificare in ogni suo particolare, da quello grafico, fino ad arrivare ai controlli inseriti. Utilizzando i template già esistenti, ci si trova di fronte un buon punto di partenza, dove saranno necessarie poche modifiche per adattare il tutto e arrivare al risultato voluto.

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

ASP .NET

RockScroll - scrollbar sostitutiva per Visual Studio

by Andrea 5/20/2008 8:05:51 PM

Vi avevo promesso che lo avrei postato, ed eccomi qui. 

All'ultimo meeting alcuni mi voi mi hanno chiesto cosa fosse la scrollbar che utilizzavo in Visual Studio.

RockScroll_5Altro non è che un tool che va a rimpiazzare la normare scroolbar e al suo posto ci mette una miniatura del testo presente nel file, evidenziando la parte di testo correntemente visualizzata.

Una dele caratteristiche che mi piace, è la possibilità di fare doppio click su di una parola, e vedere evidenziate tutte le occorenze di quel testo all'interno del file.

RockScrollOltre a questo, ci sono altre funzionalità davvero carine come la possibilità di riconoscere direttamente dalla barra le parti di testo commentate, e anche le righe di codice che sono state modificate.

 

 

Per scaricarlo e per maggiori info, vi riporto al post dell'autore Scott Hanselman: Introducing RockScroll

Technorati Tags: ,,

Currently rated 4.0 by 3 people

  • Currently 4/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

.NET | Microsoft

ASP.NET Dynamic Data - Per iniziare

by Andrea 5/19/2008 10:05:54 PM

Il miglior modo per capire cosa siano i Dynamic Data è quello di provare a realizzare una semplice applicazione che ne faccia uso.

1- Creazione Dynamic Data WebSite

Creiamo da Visual Studio 2008 un nuovo WebSite, e tra i template disponibili selezioniamo Dynamic Data WebSite. Ricordo che questo template è disponibile solo installando il SP1 del Framework 3.5, o per chi abbia scaricato in precedenza il codice da questo link.

DynData_CreateWebsite

DynData_StructureIl WebSite appena creato avrà al suo interno una struttura di cartelle e file che permetteranno ai Dynamic Data di funzionare, e che permetteranno allo sviluppatore di poter personalizzare l'applicazione per adattarla alle proprie esigenze.

 

 

 2- Creazione Classe Linq To SQL

Dovremo poi creare una classe Linq To SQL (oppure Linq to Entity) da utilizzare come fonte dati per i Dynamic Data. Le classi che verranno inserite in Linq To SQL saranno poi quelle visualizzate (in automatico) nell'applicazione, e in qui sarà possibile leggere, modificare, inserire e cancellare i dati.
DynData_LinqToSqlSelezioniamo il progetto e procediamo a creare un oggetto di tipo LINQ to SQL Classes e rinominiamolo a seconda del db che andremo a interrogare (nel mio caso Northwind.dbml). Una volta creato l'oggetto, trasciniamo all'interno le tabelle che vogliamo utilizzare la LINQ to SQL.
(Nel codice da me realizzato faccio uso del database Northwind presente tra i samples di SQL Server)

3 - Configurazione - Modifica Global.asax

Per associare il datacontext di LINQ to SQL ai Dynamic Data dovremo intervenire nel file Global.asax.
Si dovrà togliere il commento e modifcare la riga di codice dove viene eseguito la registrazione del datacontext, come segue (specificando il datacontext creato da LINQ to SQL nel passo precedente):

model.RegisterContext(
    typeof(NorthwindDataContext), 
    new ContextConfiguration() { ScaffoldAllTables = true });

Impostanto a ScaffoldAllTables a True, permetterete ai Dynamic Data di interfacciare tutte le tabelle presenti nel datacontext associato. (Nei prossimi post vedremo come modificare questa parte di configurazione per interfacciare solo determinate classi).

4 - Avvio del progetto - Il gioco è fatto

Ora non rimane altro che premere F5 ed eseguire il progetto.
Il WebSite che ci si trova davanti permetterà sarà completamente navigabile, e conterrà tutte le pagine necessarie per visualizzare e modificare i dati presenti nel db (interfacciati da LINQ to SQL).
Da notare che le pagine di modifica e inserimento dei dati comprendono anche tutta la validazione necessaria.

DynData_WebSiteDynData_ProductsDynData_Product

I Dynamic Data permettono allo sviluppatore di ridurre in modo notevole i tempi di sviluppo, in quanto ci si dovrà occupare della grafica del portale, di eventuali permessi/ruoli di visibilità e di accesso, e di configurare l'applicazione in modo da permettere la visualizzazione o la modifica solo di alcuni campi presenti (e questo argomento verrà approfondito in uno dei prossimi post).

Codice Sorgente di questo esempio - Download

ASP.NET 3.5 Dynamic Data su MSDN Code Gallery

Technorati Tags: ,

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

ASP .NET

ASP.NET Dynamic Data... cosa sono?

by Andrea 5/17/2008 10:05:40 PM

Lo devo proprio ammettere, questi Dynamic Data sono proprio stupendi!
In questo periodo ho avuto modo di approfondirli per bene, e rilascio dopo rilascio si può dire che Microsoft stà facendo proprio un bel lavoro, e i progressi si vedono.

Cosa sono i Dynamic Data?
I Dynamic Data permettono di creare una Web Application per l'accesso e la gestione dati utilizzando un meccanismo chiamato scaffolding. Questo meccanismo, unito ai Dynamic Data Control, permette di creare dinamicamente tutte le pagine per la visualizzazione, inserimento e modifica di dati recuperandoli da un DataContext (per esempio LINQ to SQL o LINQ to Entity). Le pagine create sono facilmente customizzabili e hanno al loro interno già tutte le regole e la logica di validazione.

Questa ovviamente è una definizione grossolana dei Dynamic Data, ma con i prossimi post vedrò di andare in dettaglio nelle varie parti che compongono questo nuovo mondo.

Se volete rimanere aggiornati sull'argomento, vi consiglio di seguire i blog di:

e ovviamente il mio. :D

Per chi volesse provare i Dynamic Data, al momento l'unica possibilità è solamente quella di installarsi il Microsoft .NET Framework 3.5 Service pack 1 Beta che ricordo è in BETA e li racchiude al suo interno.

E buon divertimento!!

Technorati Tags: ,

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

ASP .NET

Remainder per i ritardatari - ASP.NET 3.5 Community Meeting

by Andrea 5/16/2008 5:05:32 PM

Siamo al 16 Maggio 2008 ed è giunta la giornata in cui terrò il Community Meeting su ASP.NET 3.5 al NOVOTEL a Mestre.

Cosa vi spetterà questa sera?
Le novità introdotte in Visual Studio 2008 per gli sviluppatori Web, i nuovi Data Control (ListView, LinqDataSource, DataPager), ASP.NET AJAX e per quanto riguarderà il futuro, vedrete all'opera i Dynamic Data. E vedrete degli esempi che dimostreranno il come realizzare un'applicazione completa sia ora ancora più facile.

Non vi siete ancora registrati?
Ecco qui il link: http://www.xedotnet.org/48/section.aspx/295

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

ASP .NET | XeDotNet