Кроссплатформенный асинхронный HTTP и DB с открытым исходным кодом на C # - PullRequest
3 голосов
/ 10 сентября 2009

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

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

Ответы [ 5 ]

1 голос
/ 29 декабря 2009

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

http://www.go -mono.com / Docs / index.aspx ссылка = T: System.Net.WebClient / *

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

http://www.go -mono.com / Docs / index.aspx ссылка = T: System.Data.SqlClient.SqlCommand / *

0 голосов
/ 17 декабря 2009

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

0 голосов
/ 15 декабря 2009

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

0 голосов
/ 16 декабря 2009

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

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

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

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

0 голосов
/ 10 сентября 2009

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...