...
...
...
...
...
...
Info |
---|
The account used to connect to your installation must have the the global permissions Web Services and Export Data permission enabled enabled. |
C#
This example will retrieve the number of resources in your installation.
...
This example was tested with Visual Studio 20122013. The project is a console application. You can download a VS2013 example project here.
Attachments | ||
---|---|---|
|
Add Web Reference
You'll need to add a web reference to Projector's WSDL. You can do so by right-clicking References in the solution explorer and choosing Add Service Reference.
- Enter the WSDL address https://secure.projectorpsa.com/OpsProjectorWebSvc/OpsProjectorSvc.asmx?wsdl and click Go.
- Name the reference.
Add Using Reference
Using the name of your project and the name of your web service, add a using directive to the top of your program. In the example below, my project is OldWebServicesGetResourceCount. The service reference is called ProjectorWebServicesV1.
Code Example
Using the below code as a starting place, start using our web services.
Tip |
---|
...
Code Block | |
---|---|
|
Once the reference is added, the following code should execute (with proper authentication information):
| |
This example assumes that you can create a session ticket. To learn how to create session tickets see C Sharp Example. You must use the v2 web services to generate session tickets. They can be used by the v1 services going forward though. |
Code Block | ||
---|---|---|
| ||
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.ServiceModel; using ProjectorExampleWS1OldWebServicesGetResourceCount.ServiceReference1ProjectorWebServicesV1; namespace ProjectorExampleWS1OldWebServicesGetResourceCount { class Program { static void Main(string[] args) { { Program program = new Program(); Console.WriteLine("Projector console app running....\n"); //create an instance of the Projector Service var svc = new OpsProjectorSvcSoapClient(); var header = new OpsAuthenticationHeader { { SessionTicket = "XXXXXXXXXXXXXXXXXXXXXXXX", //you can log in using your credentials directly, but we strongly discourage this approach. You should generate session tickets to log in. Direct credentials are fine for some simple tests //AccountName = "youraccountyourAccountName", //EmailAddress = "youremailyourEmailAddress", //Password = "yourpasswordyourPassword" }; }; //Authenticate with server and ensure we have the correct Service URL var getWebServiceUrlRq = new GetWebServiceUrlRq(); GetWebServiceUrlRs getWebServiceUrlRs = svc.GetWebServiceUrl(header, getWebServiceUrlRq); if (getWebServiceUrlRs.WebServiceUrl != null) { svc.Endpoint.Address = new EndpointAddress( { var newEndpoint = string.Format("{0}/OpsProjectorWebSvc/OpsProjectorSvc.asmx", getWebServiceUrlRs.WebServiceUrl); Console.WriteLine("Redirecting your endpoint to: \n" + newEndpoint + "\n"); svc = new OpsProjectorSvcSoapClient(new BasicHttpsBinding(), new EndpointAddress(newEndpoint)); } } //Retrieve some data from the installation using Rq/Rs var exportResourcesRq = new ExportResourcesRq { { Parameters = new ExportResourcesRequest { { OnlyCountRows = true } }; } }; ExportResourcesRs exportResourcesRs = svc.ExportResources(header, exportResourcesRq); int iResources = exportResourcesRs.Data.RowCount; Console.WriteLine("Your installation has " + iResources.ToString() + " active resources as of today.\n"); Console.WriteLine("Press enter to quit"); Console.ReadLine(); } } } } |