C# Web Service / Win form download file application
$100-200 USD
処理中
投稿日: 15年以上前
$100-200 USD
完了時にお支払い
Create a C# (VS 2008 based) web service and corresponding winform app to send and receive files from the web service to the winform application.? The following lists the flow of communication to/from the web service:
1. Winform sends request to winservice
2. Winservice responds with list of files to download
3. Foreach file to download
? A) Winfom initiates download
? B) File is sent down in 'chunks'
? C) Winform responds to server that file is received successfully after comparing size recieved from webservice
? D) next file
4. Winform sends confirmation that all files have been received
Use the model discussed in the following article as a place to start:
? ? <[login to view URL]>
You can use any .NET framework class available in .NET version 3.5 but you cannot use any libaries already developed on the market.? I need to be able to redistribute this application in one of my companies products and not pay any royalty fees.
## Deliverables
Create a C# (VS 2008 based) web service and corresponding winform app to send and receive files
from the web service to the winform application.? The following lists the flow of communication
to/from the web service:
1. Winform sends request to winservice
2. Winservice responds with list of files to download
3. Foreach file to download
? A) Winfom initiates download
? B) File is sent down in 'chunks'
? C) Winform responds to server that file is received successfully after comparing size
recieved from webservice
? D) next file
4. Winform sends confirmation that all files have been received
Use the model discussed in the following article as a place to start:
? ? <[login to view URL]>
You can use any .NET framework class available in .NET version 3.5 but you cannot use any
libaries already developed on the market.? I need to be able to redistribute this application in
one of my companies products and not pay any royalty fees.
Tasks to be performed:
1. Create web service named (in the namespace: [login to view URL]) CRCUpdate (name of the
.asmx file as well as the class).? The web service will have the following public methods:
Methods:
? A) LoginAndValidate (string xmlData):? Method will be used to validate the requester and send
back a list of files for the client app to download.
? B) DownloadFile (string fileRequest):? Method to request and initiate the download of a file.?
? C)? There will probably be more methods to expose/enable download capability.
2. Create desktop sample app: TestCRCUpdate.? The desktop application will have a single main
dialog with one option to specify the time of day when the given 'watcher' thread will
communicate with the web service.? The UI will have a time picker and a button that will toggle
between Run Thread and Stop Running Thread.? Create a background thread that will communicate
with the web service at the specific time of day and begin the process of communicating and
receiving files.
3. Create a test case where the test client application requests and downloads 6 files: 2 text
files, 2 image files, and 2 .exe files (see attachment for samples - 1 file must be 50 megabytes
large to confirm the chunking works with very large files - no sample will be provided).
All code for all methods must be wrapped in try/Catches (see coding standards below for
details).
Also, you must follow the following coding standards.? NOTE:? CODE WILL NOT BE ACCEPTED IF THE
CODE DOES NOT CONFORM TO THE FOLLOWING CODING CONVENTIONS/STANDARDS:
CODING STANDARDS/REQURIEMENTS:
Classes_____________________________________
S1) All classes will start with a capital letter
S2) All classes will have a comment at the end brace with the classes name
Example:
public class MyClass
{
}// MyClass
Methods______________________________________
S3) ALL method's first letter will begin with a capital letter and words in the name will begin
with a capital letter.
Example:
public class MyClass
{
? public void CorrectMethodName ()
? {
? }
}// MyClasss
S4) All methods will have ONE try catch block and the catch will use [login to view URL] method
to handle the exception (NOTE: A DLL called [login to view URL] will be provided to include in all
projects - NOTE: contained in attachment [login to view URL]).
S5) All methods will have a comment at the end brace with the method name.
Example:
? public void CorrectMethodName ()
? {
? }//CorrectMethodName
S6) Variables and parameters will start with a lower case letter.
Example:
? public void CorrectMethodName (string correctParamName)
? {
? }//CorrectMethodName
S7) All return values will be done at the end of the method once
? public string CorrectMethodName (string correctParamName)
? {
? ? string res = null;
? ?
? ? ...various code, no mid-method returns?
? ? return res;
? }//CorrectMethodName
S8) All methods will have the standard C# comment header
Example:
// <summary>
/// Checks if a parameter is null
/// </summary>
/// <param name="o">Varible to check nullness</param>
/// <returns>True if parameter is null</returns>
public bool IsThisParamNull (object o)
{
? bool res = false;
? try
? {
? ? res = (o == null);
? }
? catch(Exception ex){[login to view URL](ex);}
? return res;
}// IsThisParamNull
Member Variables and Properties__________________
S9) All public member variables and properties will begin with a capital letter
S10) All private variables will begin with a lower case letter.
S11) All properties will have a comment at the end brace with the property name
Example:
public class MyClass
{
? public string MyID
? {
? ? get{return [login to view URL];}
? ? set{[login to view URL] = value;}
? }// MyID
? private string myID;
}// MyClass