04.10.2010

Discovery Service

IDE: Microsoft Visual C# 2010 Express

1) Neue Visual C# Konsolenanwendung erstellen

2) Unter Eigenschaften/Projekt Zielframwork in ".NET Framework 4" ändern

3) Verweise hinzufügen - Assemblys aus dem SDK:
  • Microsoft.Xrm.Sdk.dll
4) Verweise hinzufügen - .NET
  • System.ServiceModel
  • System.Runtime.Serialization

Quellcode:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ServiceModel.Description;
using Microsoft.Xrm.Sdk.Client;
using Microsoft.Xrm.Sdk.Discovery;
namespace Discovery_Service_Test
{
    class Program
    {
        static void Main(string[] args)
        {
            // Connection Data
            string crmServer = "devsrv";
            string crmUser = "Administrator";
            string crmPassword = "kennwort";
            string crmDomain = "devel";
            // Create Credentials
            ClientCredentials credentials = new ClientCredentials();
            credentials.Windows.ClientCredential =

                new System.Net.NetworkCredential(crmUser, crmPassword, crmDomain);
            // Retrieve Organization Data
            Uri discoveryServiceUrl = new Uri("http://" + crmServer + "/XRMServices/2011/Discovery.svc");
            DiscoveryServiceProxy crmService =

                new DiscoveryServiceProxy(discoveryServiceUrl, null, credentials, credentials);                       
            RetrieveOrganizationsRequest request = new RetrieveOrganizationsRequest();
            RetrieveOrganizationsResponse response = (RetrieveOrganizationsResponse)crmService.Execute(request);
            // Output first Organization
            if (response.Details.Count > 0)
            {
                OrganizationDetail org = response.Details[0];
                Console.WriteLine("WebApplication: " + org.Endpoints[EndpointType.WebApplication]);
                Console.WriteLine("OrganizationService: " + org.Endpoints[EndpointType.OrganizationService]);
                Console.WriteLine("OrganizationDataService: " + org.Endpoints[EndpointType.OrganizationDataService]);
                Console.WriteLine("FriendlyName: " + org.FriendlyName);
                Console.WriteLine("UniqueName: " + org.UniqueName);
                Console.WriteLine("UrlName: " + org.UrlName);
                Console.WriteLine("State: " + org.State.ToString());
                Console.WriteLine("OrganizationVersion: " + org.OrganizationVersion);
                Console.WriteLine("OrganizationId: " + org.OrganizationId.ToString());               
            }
            Console.WriteLine("Press <Enter> to exit.");
            Console.ReadLine();
        }
    }
}