Μερικές φορές είναι λίγο δύσκολο να καταλάβεις τη νοητική κατάσταση αυτών που σχεδίασαν το .NET Framework. Έστω ότι με κάποια μυστηριώδη λογική εξηγείται να σου βαράει exception ένα WebRequest το οποίο επιστρέφει HTTP status 404 (not found). Κάτι τέτοιο βέβαια κάνει το REST programming μεγάλο βάσανο, αλλά έστω ρε παιδί μου ότι μπορεί να είχε κάποια λογική κάποτε.
Αλλά με ποιά λογική το 304- Not Modified, μία ΑΠΟΛΥΤΩΣ λογική κατάσταση, θα πρέπει να σου ρίξει exception?

Δεν είναι μόνο ότι αναγκαζόμαστε να γράφουμε κακάσχημο κώδικα με όλα αυτά τα try...catch αλλά χρεωνόμαστε και το κόστος του exception για επιτυχημένες ενέργειες!
Ευτυχώς, στο ΕΠΟΜΕΝΟ .NET Framework μπαίνει η πολύ όμορφη κλάση
HttpClient η οποία σου γυρίζει πολύ λογικά τα κατάλληλα status codes χωρίς να αναλαμβάνει ατυχείς πρωτοβουλίες. Όποιος δεν φοβάται να ξαναγράψει τον κώδικα του μόλις βγει το επόμενο .NET, μπορεί να χρησιμοποιήσει από τώρα μία πρώιμη έκδοση που υπάρχει μέσα στο
WCF REST Starter Kit. Το οποίο ευτυχώς δεν έχει τίποτε να κάνει με WCF.
Οι διαφορές μεταξύ των δύο εκδόσεων είναι σημαντικές, καθώς η τελική έκδοση φαίνεται αρκετά απλοποιημένη ενώ χρησιμοποιεί Tasks για τις ασύγχρονες μεθόδους ενώ η preview του Starter Kit χρησιμοποιεί callbacks.
Μήπως έχει δει κανείς ποιές άλλες διαφορές υπάρχουν μεταξύ των δύο κλάσεων?
Παναγιώτης Καναβός, Freelancer
Twitter: http://www.twitter.com/pkanavos