aprile 2007 Entries
Se passate in QueryString dati codificati Base64...

...ricordatevi di scrivere, prima della decodifica

string goodBase64string = base64FromQueryString.Replace(" ", "+");

altrimenti potreste ritrovarvi una bella FormatException per "Invalid length for a Base-64 char array".

HTH

 

Technorati tags:
One Comment Filed Under [ ASP.NET 2.0 ]
Quando Lorenzo ha ragione, ha ragione

Personalmente, sottoscrivo anche le virgole!

http://blogs.ugidotnet.org/lbarbieri/archive/2007/04/24/76460.aspx

Add Comment Filed Under [ Off topic ]
[FIX] Ancora a proposito di VS2005 e debug su IIS7

Nonostante avessi configurato correttamente la Windows Authentication, aperto Visual Studio con i privilegi elevati, ecc.ecc. di punto in bianco non sono riuscito più ad attivare il debug della mia applicazione con il classico F5:

Unable to start debugging on the Web Server. An authentication error occurred while communicating with the Web Server.

o qualcosa del genere.

Sono andato avanti un paio di giorni agganciandomi manualmente al processo w3wp.exe, poi stamattina ho trovato questo post che mi ha risolto il problema smile_teeth

 

Technorati tags: ,
Un bug veramente noioso di wsdl.exe

Alcuni web service che sto realizzando, usano come parametri e valori di ritorno dei tipi che implementano l'interfaccia IXmlSerializable.

Il tool wsdl.exe utilizzato per generare i proxy per l'accesso lato client, ha un fastidioso bug descritto in questa KB: considera ogni tipo IXmlSerializable come se fosse un dataset e quindi produce metodi con signature errate.

L'aspetto più antipatico della questione è che, stando sempre a quanto scritto nella KB che ho linkato, non c'è soluzione se non quella di andare a cambiare a manina ogni metodo incriminato.

Uff, non vedo l'ora di migrare completamente a WCF!

NHibernate Search

Come segnalato da Ayende, è oramai praticamente completo NHibernate.Search. Cos'è? E' l'integrazione con NHibernate del famoso full-text search engine Lucene.

La documentazione non è ancora disponibile, ma il funzionamento è assolutamente analogo a quello della controparte Java, che si trova qui.

Non vedo l'ora di dargli un'occhiata.

 

Technorati tags:
Add Comment Filed Under [ NHibernate ]
[WCF] Condividere la medesima class library tra server e client

Windows Communication Foundation permette, in maniera estremamente semplice, di utilizzare tipi complessi sia come parametri di un servizio che come valori di ritorno: basta che essi siano marcati o con l'attributo DataContract o Serializable:

[DataContract] public class MyClass { // codice.... } [ServiceContract] public interface IMyService { [OperationContract] string MyMethod(MyClass parameter); }

Il comportamento di default di svcutil.exe, in fase di generazione del proxy per l'accesso al servizio da parte del client, è quello di creare una classe omonima di MyClass e con i medesimi membri pubblici. Nel caso in cui MyClass sia definita in un assembly referenziato sia dal service che dal client, è tuttavia possibile fare in modo che entrambi questi attori condividano lo stesso tipo, utilizzando il parametro /reference (o la sua versione breve /r) di svcutil.exe. Supponendo che il nome dell'assembly in questione sia CommonTypes, ad esempio, possiamo scrivere:

svcutil.exe /out:"MyServiceClient.cs" /language:csharp "http://serviceUrl/service.svc" /r:"CommonTypes.dll"

Technorati tags: ,
One Comment Filed Under [ .Net 3.0 ]