Pause/Resume Upload in C#

前端 未结 4 1830
我在风中等你
我在风中等你 2021-01-14 07:00

I\'m looking for a way to pause or resume an upload process via C#\'s WebClient.

pseudocode:

WebClient Client = new WebClient();
Client.UploadFileAsync(new         


        
4条回答
  •  醉酒成梦
    2021-01-14 07:37

    ok, with out giving you code examples I will tell you what you can do.

    Write a WCF service for your upload, that service needs to use streaming.

    things to remember:

    • client and server needs to identify the file some how i suggest the use of a Guid so the server knows what file to append the extra data too.
    • Client needs to keep track of position in the array so it knows where to begin the streaming after it resumes it. (you can even get the server to tell the client how much data it has but make sure the client knows too).
    • Server needs to keep track of how much data it has already downloaded and how much still missing. files should have a life time on the server, you dont want half uploaded and forgotten files stored on the server forever.
    • please remember that, streaming does not allow authentication since the whole call is just one httprequest. you can use ssl but remember that will add a overhead.
    • you will need to create the service contract at message level standard method wont do.

    I currently writing a Blog post about the very subject, It will be posted this week with code samples for how to get it working.

    you can check it on My blog

    I know this does not contain code samples but the blog will have some but all in all this is one way of doing stop and resume of file uploads to a server.

提交回复
热议问题