Domanda

Qualcuno conosce una buona risorsa per le librerie open source per C # asincrono (o roba nativa nella lingua). Sono interessato a qualsiasi cosa su questo argomento, ma sto specificatamente cercando cose relative alle chiamate HTTP e DB. Forse un framework basato sugli eventi con plug-in per HTTP e DB?

Non entrare in contatto con una soluzione non C # o qualsiasi cosa che non funziona su mono (a meno che non sia pianificato per essere eseguito su mono presto).

È stato utile?

Soluzione

Per HTTP, dipende dal fatto che tu stia parlando di client o server. Supponendo che client, potresti semplicemente usare i metodi * Async in WebClient

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

Per DB, la classe sqlcommand (o simile) espone i metodi BeginExecute * per le chiamate asincrone

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

Altri suggerimenti

Probabilmente dovresti usare un qualche tipo di sistema di coda. Esistono molti motori di coda. MSMQueue è lo "standard" Soluzione Microsoft.

Hai guardato il sistema Linxter Internet Service Bus? Puoi trovare alcuni dettagli su http://www.linxter.com e alcune app di esempio che mostrano come eseguire transazioni di database distribuite su Internet.

La domanda è piuttosto generica, sia HTTP, DB che asincroni potrebbero significare molte cose diverse, a seconda dei requisiti:

Su codeplex è possibile trovare un'implementazione del server HTTP più conforme agli standard guidata dagli eventi, compatibile con Mono ed è stato usato da altri con successo.

Esistono numerosi provider Asp.Net, nonché NHibernate

Per Linq to Sql, l'opzione migliore sarà probabilmente quella di utilizzare DbLinq sebbene DbLinq sia incluso in lo spazio dei nomi Mono.

Probabilmente dovresti controllare NServiceBus . Se funziona su mono offre un buon framework per chiamate asincrone (basato sulla messaggistica). Non offre connettività DB o HTTP per impostazione predefinita, ma dovrebbe essere abbastanza facile da integrare.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top