Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 270
  • Last Modified:

Class Instantiation

Dear all

As I am not uptodate with new technology :-)
I need to create an instance of the class below and call the method  <<public DownloadFile[] GetProcessProtocol>>
and print the result in a console... using Window Console project..

a snippet of the <<  static void Main(string[] args) >> declaration will be appericated..

Thanks in advance
public partial class CallerDownloadServices : System.Web.Services.Protocols.SoapHttpClientProtocol
	
	 public DownloadFile[] GetProcessProtocol(string CallerID, System.DateTime CreateDate, bool ArchiveData) {
        object[] results = this.Invoke("GetProcessProtocol", new object[] {
                    CallerID,
                    CreateDate,
                    ArchiveData});
        return ((DownloadFile[])(results[0]));
    }
	
	 public DownloadFile[] Result {
        get {
            this.RaiseExceptionIfNecessary();
            return ((DownloadFile[])(this.results[0]));
        }
    }

Open in new window

0
ZURINET
Asked:
ZURINET
  • 2
  • 2
1 Solution
 
yesthatbobCommented:
This would depend on what the DownloadFile class looks like. That's the only way to know how you would print the value of what is returned by CallerDownloadServices.GetProcessProtocol(). However, let's say for argument's sake that there is a ToString() method on the DownloadFile class that returns the value you would want to print. You code should look like this.

static void Main(string[] args)
{
	string callerId = "your caller ID here";	// you'll need to set your caller ID value
	DateTime createDate = DateTime.Now;		// you'll need to set your create date value
	bool archiveData = true;			// you'll need to set your archive data flag
			
	// Create an instance of CallerDownloadServices
	CallerDownloadServices dlServices = new CallerDownloadServices();

	// Call GetProcessProtocol to get the DownloadFiles
	DownloadFile[] dlFiles = dlServices.GetProcessProtocol(callerId, createDate, archiveData);

	// Cycle through the DownloadFiles to get each value
	foreach (DownloadFile file in dlFiles)
	{
		// Print each value to the console
		Console.WriteLine(file.ToString());
	}
}

Open in new window

0
 
ZURINETAuthor Commented:
Hi bob

Thanks for prompt reply

attached is the download class

How will the code look like then?
public partial class DownloadFile {
    
    private byte[] dataField;
    
    private string filenameField;
    
    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary")]
    public byte[] Data {
        get {
            return this.dataField;
        }
        set {
            this.dataField = value;
        }
    }
    
    /// <remarks/>
    public string Filename {
        get {
            return this.filenameField;
        }
        set {
            this.filenameField = value;
        }
    }
}

Open in new window

0
 
yesthatbobCommented:
Depends...do you want to print the file contents, of the filename?

If it's the filename, simply change line 17 in my example to:

Console.WriteLine(file.FileName);

Open in new window


If it's the contents (Data property), things get a bit trickier, because the data could be binary and not play well when printed at the console.
0
 
ZURINETAuthor Commented:
Thanks...
Just want to make sure that I can access the Webservice....
The file will be passed on to a customer..

Thanks once again
0

Featured Post

Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now