От ASPX к WCF

2

Я надеюсь, кто-то может посоветовать мне, как решить мой сетевой сценарий. И клиент, и сервер должны быть на основе С#/.NET.

В основном я хочу вызывать какой-то веб-сервис от моего клиента, чтобы извлекать как двоичные данные (например, файлы), так и сериализованные объекты и списки объектов (например, результаты запроса базы данных).

На данный момент я использую страницы ASPX, используя строку запроса для предоставления параметров, и я возвращаю либо двоичные данные, либо двоичные данные сериализованных сообщений. Это дает мне большую гибкость, и я могу выбрать, как передавать данные, выполнять симуляционные запросы, отменять текущие запросы и т.д. Так как я могу управлять сериализованным форматом, я также могу десериализовать списки объектов по мере их получения, что является решающим.

Моя проблема не проблема как таковая, но это немного взломано, и я не могу не задаться вопросом, есть ли у нее лучшие способы. Я рассматриваю возможность перехода на WCF или, возможно, еще одну технологию, чтобы увидеть, помогает ли она. Однако мне нужно знать, помогает ли это в моих сценариях выше:

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

  • Возможно, мне удастся получить какую-либо выгоду от этого? Я не знаю, насколько хорошо настроены страницы ASPX для этого, поскольку это, конечно же, не является их основной целью.

  • Есть ли какие-либо другие подходы, которые я должен рассмотреть?

Спасибо за ваше время, потраченное на чтение этого. Надеюсь, вы сможете помочь.

  • 0
    Сколько данных вы отправляете за раз, когда спрашиваете об увеличении производительности и потоковой передаче данных? И также много задержек?
Теги:
wcf
streaming

1 ответ

2
Лучший ответ

WCF не поддерживает потоковые коллекции. (Которые не совпадают с Передача потокового сообщения)

Однако, см. этот пост в блоге.

Я рекомендую использовать файлы ASHX (общие обработчики) вместо ASPX-страниц (Web Forms), поскольку они имеют гораздо меньшие накладные расходы.

  • 0
    Спасибо за это. Файлы ASHX, кажется, подходят для моего случая, поэтому я определенно рассмотрю это. Большое спасибо!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню