Кроссплатформенный асинхронный HTTP и DB с открытым исходным кодом на C #

StackOverflow https://stackoverflow.com/questions/1402088

Вопрос

Кто-нибудь знает хороший ресурс для библиотек с открытым исходным кодом для асинхронного C # (или нативные вещи для языка). Меня интересует что-нибудь по этой теме, но я специально ищу материал, относящийся к вызовам HTTP и DB. Может быть, управляемая событиями инфраструктура с плагинами для HTTP и DB?

Пожалуйста, не говорите о решении, отличном от C #, или о чем-либо, что не работает в режиме моно (если только не планируется запустить его в моно).

Это было полезно?

Решение

Для HTTP это в некоторой степени зависит от того, говорите ли вы о клиенте или сервере. Предполагая клиента, вы можете просто использовать методы * Async в WebClient

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

Для БД класс sqlcommand (или аналогичный) предоставляет методы BeginExecute * для асинхронных вызовов

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

Другие советы

Возможно, вам придется использовать какую-то систему очередей. Есть много механизмов очереди. MSMQueue является «стандартным» Решение Microsoft.

Вы смотрели на систему интернет-шины Linxter? Некоторые подробности можно найти на http://www.linxter.com и в некоторых примерах приложений, в которых показано, как выполнять База данных транзакций распространяется через Интернет.

Вопрос довольно общий, и HTTP, и DB, и асинхронный могут означать много разных вещей, в зависимости от требований:

На codeplex вы можете найти реализацию HTTP-сервера, более совместимую со стандартами и управляемую событиями, совместимую с Моно и был успешно использован другими.

Существует целый ряд провайдеров Asp.Net, а также NHibernate

Для Linq to Sql лучшим вариантом, вероятно, будет использование DbLinq , хотя DbLinq включен в пространство имен Mono.

Вам, вероятно, следует проверить NServiceBus . Если он работает на моно, он предлагает вам хорошую основу для асинхронных вызовов (на основе обмена сообщениями). По умолчанию он не обеспечивает подключения к БД или HTTP, но его довольно легко интегрировать.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top