mercoledì, settembre 15, 2004

SOAP over UDP

ciao Amici,
guardate qua: finalmente le specifiche SOAP per comunicare via UDP. Si apre un mondo interessante!
SOAP over UDP
Baci

martedì, settembre 14, 2004

La perla nascosta di ADO.Net 2.0

Questo è il mio primo post nel blog del mio amico Marco...che onore!

In ADO.Net 2.0 ci sono numerosi miglioramenti, ma l'innovazione meno pubblicizzata è secondo me la più importante.

C'è un nuovo namespace chiamato System.Transactions che, per semplificare alla grande, porta all'interno del Framework la gestione delle transazioni distribuite via DTC.
Ad oggi da .Net si usa DTC direttamente (non oso pensarci) oppure attraverso COM+, fondamenta delle applicazioni distribuite, che nel framework occupa il namespace System.EnterpriseServices.

Chi ha usato COM+ via System.EnterpriseServices sa che non è una bella esperienza: tutte le assemblies devono avere strong name (e non è un problema) e si è costretti a inserirle nella GAC; se non ci sono altri buoni motivi che spingono a usare la GAC si perdono per nulla i vantaggi del deployment semplificato di .Net. Non è finita, c'è anche il tool regsvcs che registra l'assembly come package in COM+.

Tutte queste configurazioni ed operazioni aumentano i tempi di sviluppo e le probabilità di errore... Inoltre è un peccato rinunciare alle potenzialità di .Net per usare alcune delle capacità di COM+.

Nel framework 2.0 la gestione delle transazioni (distribuite via DTC o leggere "Lighweight") è totalmente managed, non esiste nessuna classe da ereditare, nessuna configurazione particolare, nessun tool da utilizzare.....un enorme passo avanti.

Questi link aiutano a capire meglio le potenzialità di System.Transactions...vedrete quanto poco serve per gestire le transazioni.
http://weblogs.asp.net/angelsb/archive/2004/07/06/174215.aspx
http://weblogs.asp.net/angelsb/archive/2004/07/07/175586.aspx
http://msmvps.com/williamryan/archive/2004/07/08/9759.aspx
http://weblogs.asp.net/angelsb/archive/2004/07/15/184297.aspx

I 10 Tools che tutti dovrebbero avere

Su MSDN Magazine è uscito un interessante articolo sui "Ten Must-Have Tools Every Developer Should Download Now". Visto che alcuni di questi tools li avevano segnalati su questo blog alcuni dei contributors, vuol dire che non siamo tanto scarsi nel consigliarli...
Mi piacerebbe che nei commenti di questo post segnalaste anche voi la vostra Top 10 personale (ovviamente so già che nella mia comparirà SourceEdit e in quella di Maxmost Ultraedit, ma c'est la vie...)

venerdì, settembre 10, 2004

ADO.NET e il metodo DeriveParameters

Esiste un metodo particolare che ci permette di scoprire a Runtime tutti i parametri di una determinata Stored Procedures. Il metodo è DeriveParameters.
Interessante anche l'utility SP/Invoke che trovate disponibile anche con i sorgenti presso ObjectNation, utile per wrappare e semplificare le chiamate alle Stored Procedures da C#, VB.Net e JScript.Net.


mercoledì, settembre 08, 2004

XP EnableVisualStyles

Basta aggiungere:
Application.EnableVisualStyles()
Application.DoEvents()
come consigliato qui.

Vedi anche:

lunedì, settembre 06, 2004

OpenFTP.NET

OpenFTP.net è una client library FTP open scritta in C# per .Net. Offre upload in modalità sia attiva che passiva e un infrastruttura base per tutto il resto...

OpenSMTP, OpenIMAP & OpenPOP for .NET

OpenSmtp.net è un componente open source SMTP scritto in C#. Non si basa sulle classi System.Web.Mail del .Net Framework e permette di usare SMTP servers diversi dal MS SMTP. ha anche un web service che permette di spedire email via HTTP.

OpenImap.net è una Class library/component scritta in C# per comunicare con IMAP Servers. Compila sia su Mono che sul .NET framework.

OpenPop3.net è una .NET Class library in C# per comunicare POP3 Servers (recuperare/cancellare messaggi e attachments). Suppora il decoding di files in Base64/QP encoding, inclusi attachemnts, formato MS-TNEF, e file MS mht. Compilea su Mono, DotGNU e sul .NET framework

giovedì, settembre 02, 2004

Segnalazione URL: Everest HE

Da vecchio utilizzatore del validissimo AIDA32, ora mi sono allineato allo stato dell'arte e uso il completissimo Everest HE: vi fornisce una completissima analisi del vostro PC sia HD che SW, non penso che in giro si trovi di meglio... provare per credere.

mercoledì, settembre 01, 2004

.NET Web.Mail

Penso che questo sia il più esauriente sito sulle tematiche riguardanti il namespace Web.Mail. Inizia con un introduzione e con degli esempi di programmazione. Termina con risoluzioni di difficili problemi e altre risorse.

SQLOps: Helper class per i DataSet

In questo blog trovate infos e brandelli di codice su SQLOps: una classe helper sull'utilizzo dei DataSet in maniera "smart" estendendo le features che offrono nativamente, tipo GROUP BY, DISTINCT , JOIN perfezionate, ecc...
Utile per trarre qualche idea...

lunedì, agosto 30, 2004

Sysinternals - Process Explorer

Ecco un'ottima alternativa al Task Manager :Sysinternals Freeware - Process Explorer. La cosa bella? Oltre a tante altre:
a) per gli sviluppatori .NET c'è un tab che mostra tutti i contatori di performance!
b) per chi sviluppa in multithread c'è la possibilità di terminare il singolo thread!

venerdì, agosto 27, 2004

VB.NET & C# escape chars

Se scrivete in VB.NET è scomodo scrivere così:
Dim text As String = ControlChars.Tab & "A string indeted by a tab" _
& ControlChars.CrLf & "A string on a separate line"


Vi piacerebbe magari poter scrivere come in C#:
string text = "\tA string indented by a tab\nA string on a separate line";

Bhè, potete sempre usare le Regular Expressions:
' Ovviamente dovete avere il seguente Imports statement
' Imports System.Text.RegularExpressions

Dim text As String = Regex.Unescape("\tA string indeted by a tab\nA string on a separat" _
& "e line")





Come avere successo con ADO.NET

Terzo articolo della serie ADO-Esposito interessante per ottenere le migliori performances da ADO.NET

.NET Managed Providers

Ancora un bell'articolo di Esposito su .NET Managed Providers

10 Comandamenti di ADO.NET

Interessante articolo di Dino Esposito da prendere come i "dieci comandamenti della programmazione per ADO.NET".

martedì, agosto 24, 2004

ieHTTPHeaders

Interessante tool che si integra in explorer per spiare i pachetti che transitano da client a server.
blunck.info

venerdì, agosto 20, 2004

Politica di versioning degli Assembly in .NET

Se avete bisogno di referenziare a runtime una versione particolare di un assembly dal vostro applicativo, anche piu' vecchio, aggiungete al vostro AppName.exe.config la seguente sezione (ovviamente sostituendo opportunamente Name, PKT, e version)



<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">


<dependentAssembly>
<assemblyIdentity name="calcR"
publicKeyToken="a1690a5ea44bab32"
culture=""/>


<bindingRedirect oldVersion="5.0.0.0"
newVersion="6.0.0.0"/>


</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>



Tratto da: GotDotNet

giovedì, agosto 19, 2004

.NET Tool: ILMerge

Date un'occhiata a questa utile utility (scusate la pseudo-ripetizione) direttamente dal sito "Microsoft Research". Permette di unificare più assemby in uno solo (es.: un .exe e una .dll in un singolo .exe) cosa che il VS.NET non fa (non ha infatti un vero e proprio linker). Mi domando: ma se lo hanno fatto loro, perchè non lo hanno messo dentro all IDE?

martedì, agosto 17, 2004

Segnalazione URL: Pinvoke

Ricordate il vecchio API Viewer?!? O il piu' completo e recente API-Guide?!?
Bhe', ora per semplificarci le chiamate API32 da C# e/o VB.NET ecco a voi: http://www.pinvoke.net/

Segnalazione URL: EXSLT.NET

Ottima classe per lavorare con XSLT e XPath in .NET
EXSLT.NET
Per vedere lo standard emergente: exslt.org