Что лучший способ состоит в том, чтобы отправить файлу по сети с помощью C#?

Мне нужен был подобный так называемый «контекст-корень». Я сделал это в файле conf под /etc/httpd/conf.d/, используя WSGIScriptAlias:

myapp.conf:


    WSGIScriptAlias /myapp /home//myapp/wsgi.py

    /myapp>
        Order deny,allow
        Allow from all
    


Итак, теперь я могу получить доступ к моему приложению как: http: // localhost: 5000 / myapp

См. руководство - http://modwsgi.readthedocs.io/en/develop/user-guides/quick-configuration -guide.html

6
задан Mike Pennington 22 November 2012 в 13:57
поделиться

6 ответов

Необходимо изучить двоичную сериализацию и отправку ее по сокету TCP.

Хорошее объяснение на различных типах сериализации:

http://www.dotnetspider.com/resources/408-XML-serialization-Binary-serialization.aspx

Хорошая краткая информация о клиенте TCP / Сервер в C#:

http://www.codeproject.com/KB/IP/tcpclientserver.aspx

4
ответ дан 17 December 2019 в 00:17
поделиться

Я не использовал бы HTTP или FTP для единственного файла, который это является слишком много служебным и слишком много кодировать, особенно имея простой сервер TCP, почти уже сделанный для Вас в C#.

1
ответ дан 17 December 2019 в 00:17
поделиться

Это зависит, что Вы подразумеваете под сетью - если Вы копируете в локальной сети, можно просто использовать операции копии файла в Системе. IO. Если Вы желаете отправить к удаленным серверам, я делаю это использование веб-сервисы. Я сжимаю массивы байтов и отправляю их и распаковку на удаленной стороне. Массив байтов супер легко записать обратно к диску с помощью потоков.

Я знаю, что некоторые люди предпочитают основу 64 строки вместо байта []. не уверенный, если это имеет значение.

2
ответ дан 17 December 2019 в 00:17
поделиться

Как насчет того, чтобы использовать HTTP или FTP? Они были видом сделанных для этого.

Alex

0
ответ дан 17 December 2019 в 00:17
поделиться

В зависимости от того, где Вы отправляете файл в, Вы могли бы хотеть смотреть на WebClient. UploadFileAsync и WebClient. UploadFile.

0
ответ дан 17 December 2019 в 00:17
поделиться

Сокеты могут быть оптимальным маршрутом, если необходимо просто сделать это по сети. При использовании TCP Вы получаете надежность коммуникации, но берете влияние на скорость. При необходимости в более высокой производительности Вы могли бы попытаться использовать UDP вместо этого. Но оборотная сторона к UDP - то, что доставка пакетов и порядок не гарантируются, таким образом, необходимо было бы записать всю эту инфраструктуру себя.

Если необходимо передать файлы по самой сети (программно, и если Вы не можете использовать FTP), то подход веб-сервиса через MTOM мог бы соответствовать Вашим потребностям.

Если Вы создаете сверху Windows Server 2003 R2, Windows Vista или Windows Server 2008 и делаете передачи внутренней сети, другая опция состоит в том, чтобы усилить новую функцию Remote Differential Compression. Это не только делает действительно хорошее задание при сжатии файла для уменьшения сетевого трафика, но также используется непосредственно репликацией DFS. Оборотная сторона (как разработчик.NET), это - технология COM +.

0
ответ дан 17 December 2019 в 00:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: