La nostra amata Puglia è ormai una terra in piena attività. Per questo l’evento che domani si terrà a Lecce rappresenta un nuovo punto di inizio, una nuova realtà che emerge. Noi di dotnetside abbiamo più volte pensato ad organizzare eventi anche fuori dal territorio barese ma, sebbene qualche piccola iniziativa ci sia stata, è sempre mancato l’appoggio sul territorio.
Perciò penso che l’AcademicClub, l’Università del Salento e i Microsoft Student Partners stanno facendo davvero un’ottimo lavoro nel territorio Salentino.
Vi invito a partecipare domani al primo DotNetDay che si terrà a Lecce. Questo un estratto dal sito:
Un’intera giornata dedicata al mondo delle tecnologie Microsoft, col supporto dell’Associazione Freccia, in compagnia del team Microsoft Student Partners e degli Speakers dell'Academic Tour.
Oltre alle tante sessioni tecniche incentrate sulle ultimissime tecnologie, ci sarà la possibilità di toccare con mano i nuovi dispositivi, Windows Phone 7 e Xbox 360 con Kinect, che sfruttano al massimo tutte le tecnologie trattate durante i workshop tecnici. La giornata sarà completata da coffee break e pranzo a buffet, offerti a tutti i partecipanti da Microsoft.
Io, purtroppo, per impegni lavorativi non potrò esserci, e ne sono davvero dispiaciuto. Ma spero di rifarmi al prossimo evento. 
http://www.dotnetday.it
Tra i metodi forniti nativamente dal Windows Azure StorageClient non c’è la possibilità di verificare se un blob è già esistente. Con qualche piccolo trucchetto a base di extension methods si può verificare l’esistenza di un blob generando un traffico davvero minimo sfruttando l’HTTP Method HEAD:
1: public static class StorageExtensions
2: {
3: public static bool Exist(this CloudBlob blob)
4: {
5: try
6: {
7: var request = BlobRequest.Get(blob.Uri, 60, null, null);
8: request.Method = "HEAD";
9: blob.ServiceClient.Credentials.SignRequest(request);
10: var response = request.GetResponse() as HttpWebResponse;
11: return response.StatusCode == HttpStatusCode.OK;
12: }
13: catch (WebException ex)
14: {
15: if (ex.Response != null && ex.Response is HttpWebResponse)
16: {
17: var response = (HttpWebResponse)ex.Response;
18: return (response.StatusCode == HttpStatusCode.OK);
19: }
20: return false;
21: }
22: }
23: }
Utilizzabile in questo modo:
1: var container = client.GetContainerReference(containerName);
2: var blob = container.GetBlobReference(blobName);
3: if (!blob.Exist())
4: {
5: // ...
6: }
bye
Se vi doveste trovare davanti a questo messaggio di errore, allora probabilmente il nome del vostro Container/Blob non rispetta una di queste limitazioni:
- Container names must start with a letter or number, and can contain only letters, numbers, and the dash (-) character.
- Every dash (-) character must be immediately preceded and followed by a letter or number; consecutive dashes are not permitted in container names.
- All letters in a container name must be lowercase.
- Container names must be from 3 through 63 characters long.
Su MSDN: http://msdn.microsoft.com/en-us/library/dd135715.aspx.
Anche Tables e Queues hanno delle limitazioni, data un’occhiata qui:
Voglio riportare qui un elenco delle prime recensioni raccolte dopo l’uscita del mio libro su Windows Azure:
Inoltre il libro è stato citato anche su questi portali:
Potete inoltre dare uno sguardo ad alcuni estratti del libro su questa pagina: http://www.microsoft.com/italy/pmi/comefare/tecnologia/windowsazure/article1.mspx.
Grazie a tutti 