ASP.NET
Documentazione "Work in Progress" della prossima release di Entity Framework : http://ef.readthedocs.org/en/latest/
Un’interessante novità introdotta con la versione 6.0 release 4 di Json.NET è la possibilità di eseguire il Merge (utilizzando 4 possibili “variazioni”) di oggetti JObject e Jarray. Un rapido esempio, tramite Web Api: [HttpPost]
public void JsonStringPost([FromBody]string value)
{
JObject jCar = JObject.Parse(value);
JObject jOptional = JObject.Parse(@"{Optionals :['Air Conditioned','Smoker'] }");
jCar.Merge(jOptional, new JsonMergeSettings() { MergeArrayHandling = MergeArrayHandling.Union });
string jsonFormat = jCar.ToString();
Car mergedCar = jCar.ToObject<Car>();
}
Dove l’Action “JsonStringPost” accetta una stringa tipo:
"{ 'Brand': 'Ferrari','Model': 'f450 Modena','Optionals':...
Sono stati rilasciati in RTM, ASP.NET Dynamic Data e EntityDataSource per EntityFrameowrk 6. Per provare la nuova versione di Dynamic Data è sufficiente creare un nuovo progetto di tipo “ASP.NET Dynamic Data Entities Web Application”, ed installare tramite NuGet il package Microsoft.AspNet.DynamicData.EFProvider: Eventualmente forziamo la scrittura dei Template (“A” per sovrascrivere tutto): Aggiungiamo in modalità Code First una semplice classe Book e relativo DbContext: public class Book
{
public int Id { get; set; }
public string Title { get; set; }
public string Authors...
Torniamo ancora sull’argomento “WebJobs” descrivendo brevemente le varie modalità di Triggering: Alla creazione di un nuovo Blob Alla ricezione di un nuovo Queue Message Esplicatamente tramite l’invocazione della funzione Call Nei post precedenti (parte 1 e parte 2) abbiamo visto come attivare il Trigger del “WebJob” alla creazione di un nuovo Blob all’interno di un container specifico semplicemente utilizzando l’attributo [BlobInput]. Con le stesse modalità é possibile eseguire il Binding di una funzione invocata dall’instanza di JobHost al ricevimento di un messaggio in un specifica...
Rilasciato un aggiornamento per ASP.NET DynamicData e DataSourceControl per Entity Framework 6. Tutti i dettagli del caso sul blog originale.
Se abbiamo la necessità di debuggare le nostre Web Api pubblicate su Azure, i passi da seguire sono veramente pochi e semplici: Download ed installazione di Azure SDK 2.2 Aprire la Solution contenente il progetto Web con la definizione delle Web API Connettersi a Windows Azure tramite l’apposito link in Server Explorer: Pubblicare il progetto (in Debug): ...
Tra le novità di Visual Studio 2013 ed ASP.NET 4.5.1 , troviamo nuove opzioni per integrare applicazioni SPA (Single Page Application) e Web API (ma non solo) con servizi di autenticazione esterni basati su Social come Twitter, Facebook, Google e Microsoft Accounts o basati su OAuth/OPenID (tutto a vantaggio di noi sviluppatori). Vediamo con un esempio. Apriamo VS 2013 (Preview) e selezioniamo come template “ASP.NET Web Application”: Scegliamo il progetto di tipo SPA che di base utilizza HTML5, CSS3 e ASP.NET Web API (una semplice applicazione “Todo List”): A questo punto il gioco...
Se domani non avete proprio nulla da fare :-) possiamo vederci a Codemotion 2013 Roma. Una sessione introduttiva all’utilizzo del Framework ASP.NET Web Api per lo sviluppo di applicazioni RESTful.
Con il rilascio dell’aggiornamento ASP.NET 2012.2 di qualche settimana fa, lo sviluppo di una “Help Page” per Web Api, utilizzando l’apposito Package di NuGet, é un’attività che impegna meno di 5 minuti (per completezza di informazione, era già presente una versione alpha del Package prima del rilascio ufficiale).
1) Dalle “references” del progetto Web da “documentare”, apriamo la finestra per la gestione dei “Packages” di NuGet:
2) Cerchiamo la voce “Web Api Help Page” e clicchiamo su “Install” (verranno installate le dipendenze necessarie):
3) Al progetto verrà aggiunta l’area “HelpPage” sotto la cartella “Areas”, con tutte le classi necessarie (css compreso):
...
Rilasciata la versione finale di “ASP.NET and Web Tools 2012.2 Update”, un download che arrichisce, non di poco, le funzionalità esistenti, in Visual Studio 2012 e ASP.NET (tra le novità, OData EndPoint in ASP.NET Web API, ASP.NET SignalR, Single Page Applications). Tutti i dettagli del caso sul post originale sul blog di Scott Guthrie.
Post promemoria: interessante ed abbondante elenco di Micro-Framework (completo di “motore di ricerca”) microjs.com
Nella prima parte dell’articolo abbiamo introdotto i WebSocket sviluppando una semplice applicazione composta da un client che invia dei messaggi di testo ad un server (WebSocket Server), il quale risponde inviando un testo ed un numero che rappresenta la lunghezza del messaggio ricevuto. Nel post precedente abbiamo descritto con maggior dettaglio il codice lato client demandando a questa seconda parte maggiori approfondimenti relativamente alla parte server il cui codice è composto dalla semplice classe WebSochetHandler.ashx, la quale implementa l’interfaccia IHttpHandler, ragion per cui è necessario scrivere del codice per il metodo ProcessRequest(HttpContext context), per l’elaborazione delle richieste Web HTTP, e...
Chi sviluppa per il Web, si scontra ogni giorno con le “limitazioni” del modello request-response di HTTP, il quale non è pensato “ad hoc” per applicazioni real time, o comunicazione bidirezionale client-server. Per questi scenari, spesso vengono utilizzate tecniche di polling, da parte del client, per verificare l’eventuale presenza di dati “freschi”, eseguendo continuamente delle richieste HTTP, comportando dei “costi”: il server deve utilizzare differenti connessioni TCP per ogni client (una per inviare informazioni ed una per rispondere alla richiesta di aggiornamenti), un continuo scambio di messaggi client-server (comportando quindi un aumento del traffico di rete). Potrebbe sembrare cosa da...
Quando utilizziamo le Web API, per leggere e scrivere oggetti nel corpo di un messaggio Http utilizziamo delle classi particolari, le media-type formatters. "Gratis" Web API fornisce media-type formatters per JSON e XML, utilizzate secondo della richiesta da parte dei client (“Accept”). Se JSON e XML non sono i "formati" di cui abbiamo bisogno possiamo sempre creare la nostra classe derivata da MediaTypeFormatter o BufferedMediaTypeFormatter, rispettivamente per scenari asincroni o sincroni, ma non sono l’argomento di questo post promemoria. Quando abbiamo a che fare con grafi di oggetti complessi, possono crearsi situazioni in cui abbiamo riferimenti circolari tra oggetti....
Seconda parte della serie dedicata ad ASP.NET Web API. Articolo completo (anche in versione PDF) e sorgenti su DomusDotNet
Prima parte della serie dedicata ad ASP.NET Web API. Codice sorgente ed articolo completo su DomusDotNet.
Ieri 9/3/12 si è svolto l’evento WeWantWeb organizzato da DomusDotNet presso la sede Microsoft di Roma. Le sessioni sono state registrare e quanto prima pubblicheremo Slide, codice sorgente degli esempi e Video, sul sito di DomusDotNet. Grazie a tutti i partecipanti!!! Attendiamo i vostri feedback! Al prossimo evento . Da sinistra verso destra: Alessandro Mostarda e Massimo Bonanni, Giorgio Di Nardo, Nick, io , parte di coloro che hanno avuto la pazienza di ascoltarci .
Come da titolo, evento interamente dedicato al mondo del Web!!! A breve apriranno le iscrizioni. Iscrizioni aperte!!! Tutti i dettagli e l’agenda completa sulla pagina dell’evento: WeWantWeb.
Sul blog di MSDN Italia è stato aggiunto un post che riporta link ad una serie di video su SharePoint 2010 per sviluppatori ASP.NET, per chi fosse interessato, tutti i dettagli qui.Un bel regalo di Natale .
Prima parte di una serie di articoli dedicati ai WCF Data Services, al protocollo OData e REST. Per gli interessati , articolo completo qui.
Chi usa i WCF Data Service (vedi ADO.NET Data Service), potrebbe incontrare qualche difficoltà nell’utilizzo di Entity Framework 4.1 utilizzando l’approccio Code First, “a causa” del DbContext, dato che un DataService<T> si aspetta un T derivato da ObjectContext . “Under the hood” il DbContext utilizza ObjectContext e di conseguenza è facile immaginare una possibile soluzione al problema: eseguire l’ovveride del metodo CreateDataSource del DataService<T> ed utilizzare l’ObjectContext corrente. E’ sufficiente qualche ricerca tramite Bing o Google per trovare del codice di esempio. Per chi ha voglia di sperimentare, può a scaricare la versione WCF Data Service CTP 2 di Marzo...
Qualche foto della tappa Romana del Microsoft Community Tour, DomusDotNet e Visual Basic Tip & Tricks: In ordine da sinistra verso destra: Foto di gruppo dopo la sessione “Async CTP: async and iterator methods” for VB tenuta da Lucian Wischik (VB Spec Lead - Microsoft Corporation) . Sessione fantastica, ricca di spunti per il futuro, ma non solo. (nella foto Alessandro del Sole, Diego Cattaruzza, Nicolò Carandini e Lucian Wischik ) Massimo, Speaker di DomusDotNet per la sessione “IE9 & HTML5 for developers” Una foto della sessione “IE9...
Oggi mi è capitato di eseguire delle operazioni di manutenzione su di in una Web Application scritta in ASP.NET 3.5. Durante l’avvio dell’applicazione veniva sollevata una System.Web.HttpException di cui riporto lo StackTrace: in System.Web.StaticFileHandler.GetFileInfo(String virtualPathWithPathInfo, String physicalPath, HttpResponse response) in System.Web.StaticFileHandler.ProcessRequestInternal(HttpContext context) in System.Web.DefaultHttpHandler.BeginProcessRequest(HttpContext context, AsyncCallback callback, Object state) in System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() in System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) Con la proprietà Message impostata a : “Il file non esiste”. Utilizzando l'evento “Application_Error” presente nel Global.asax e utilizzando il codice seguente:...
Scaricabile da ScottGu's Blog
Supponiamo di avere un file di Report in formato .rdlc, e di voler stampare una lista di prodotti visualizzando un'immagine prodotta a run-time e memorizzata in un MemoryStream, piuttosto che utilizzare file d'immagine. Ad esempio, supponiamo di avere nel nostro Database, una tabella denominata Prodotti, contenente 4 colonne: Aggiungiamo al nostro progetto (ad esempio di tipo Web Application) un DataSet tipizzato (dsProdotti) contenente un DataTable Prodotti, a cui andiamo ad aggiungere una colonna denominata Immagine, con proprietà DataType impostata su System.Byte[]: Aggiungiamo un nuovo file di Report (Report1.rdlc), nel designer del report,...
A volte potrebbe essere necessario personalizzare l'aspetto del controllo SiteMapPath. A tal fine è sufficiente agire tramite gli appositi template:
RootNodeTemplate: Template per il nodo radice;
NodeTemplate: Template per il nodo generico;
CurrentNodeTemplate: Template per il nodo corrente;
PathSeparatorTemplate: Template per il separatore tra nodi.
e per ogni template (se necessario), sul corrispondente tag per la gestione dello stile:
RootNodeStyle, gestisce lo stile per il nodo corrente;
NodeStyle, gestisce lo stile per il nodo generico;
...