Question

Est-ce que quelqu'un connaît une bonne ressource pour les bibliothèques open source pour C # asynchrone (ou des éléments natifs du langage). Ce sujet m'intéresse, mais je recherche en particulier des informations relatives aux appels HTTP et aux appels de base de données. Peut-être un framework événementiel avec des plugs pour HTTP et DB?

S'il vous plaît, n'entrez pas dans une solution non C # ou avec tout ce qui ne fonctionne pas en mono (sauf si vous envisagez de l'exécuter bientôt en mono).

Était-ce utile?

La solution

Pour HTTP, cela dépend un peu du fait que vous parliez de client ou de serveur. En supposant que client, vous pouvez simplement utiliser les méthodes * Async dans WebClient

http: // www. go-mono.com/docs/index.aspx?link=T:System.Net.WebClient/ *

Pour DB, la classe sqlcommand (ou similaire) expose les méthodes BeginExecute * pour les appels asynchrones

http: // www.go-mono.com/docs/index.aspx?link=T:System.Data.SqlClient.SqlCommand/ *

Autres conseils

Vous devrez probablement utiliser une sorte de système de file d'attente. Il y a beaucoup de moteurs de file d'attente. MSMQueue est le " standard " Solution Microsoft.

Avez-vous examiné le système de bus de service Internet Linxter? Vous trouverez des détails sur http://www.linxter.com et des exemples d'applications montrant comment exécuter des tâches. transactions de base de données distribuées sur Internet.

La question est assez générique, HTTP, DB et asynchrone peuvent signifier beaucoup de choses différentes, en fonction des besoins:

Sur codeplex , vous pouvez trouver une implémentation de serveur HTTP plus conforme aux normes, régie par les événements, compatible avec Mono et a été utilisé avec succès par d’autres.

Il existe plusieurs fournisseurs Asp.Net, ainsi que des NHibernate

Pour Linq to Sql, votre meilleure option sera probablement d'utiliser DbLinq bien que DbLinq soit inclus dans l'espace de noms Mono.

Vous devriez probablement vérifier NServiceBus . S'il fonctionne en mono, il vous offre un bon cadre pour les appels asynchrones (basés sur la messagerie). Il ne propose pas la connectivité DB ou HTTP par défaut, mais cela devrait être assez facile à intégrer.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top