public CrmDataController(string organization, string username, string password) { System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; var serverUri = XrmServiceUriFactory.CreateOnlineOrganizationServiceUri(organization, CrmOnlineRegion.EMEA); this.Manager = new OrganizationServiceManager(serverUri, username, password); _orgService = this.Manager.GetProxy(); TablaEstados = new Dictionary <int, StateEstadoPeticion>(); var activo_pdte = new StateEstadoPeticion() { State = 0, EstadoPeticion = 0 }; TablaEstados.Add(964610004, activo_pdte); TablaEstados.Add(964610005, activo_pdte); TablaEstados.Add(964610006, activo_pdte); TablaEstados.Add(964610007, activo_pdte); TablaEstados.Add(964610008, activo_pdte); TablaEstados.Add(964610009, activo_pdte); TablaEstados.Add(964610010, activo_pdte); TablaEstados.Add(964610011, activo_pdte); var resuelto_aprobadaSinEfecto = new StateEstadoPeticion() { State = 1, EstadoPeticion = 3 }; TablaEstados.Add(964610012, resuelto_aprobadaSinEfecto); TablaEstados.Add(964610013, resuelto_aprobadaSinEfecto); var resuelto_aprobada = new StateEstadoPeticion() { State = 1, EstadoPeticion = 1 }; TablaEstados.Add(964610014, resuelto_aprobada); var resuelto_rechazada = new StateEstadoPeticion() { State = 1, EstadoPeticion = 2 }; TablaEstados.Add(964610015, resuelto_rechazada); var cancelado_cancelado = new StateEstadoPeticion() { State = 2, EstadoPeticion = 4 }; TablaEstados.Add(964610016, cancelado_cancelado); var cancelado_error = new StateEstadoPeticion() { State = 2, EstadoPeticion = 5 }; TablaEstados.Add(964610017, cancelado_error); }
/// <summary> /// Initialize Organization client for D365 integration /// </summary> private void InitializeOrganizationServiceManager() { var serverUri = XrmServiceUriFactory.CreateOnlineOrganizationServiceUri(JobSettings.CrmOrganizationName, CrmOnlineRegion.EMEA); OrganizationServiceManager = new OrganizationServiceManager(serverUri, JobSettings.CrmUserName, JobSettings.CrmUserPassword); OrganizationServiceManager.ParallelProxy.MaxDegreeOfParallelism = JobSettings.ThreadNumber; Log($"Organization service initialized to {serverUri.ToString()} with user {JobSettings.CrmUserName}!"); }
/// <summary> /// Demonstrates an online-federated connection to Organization.svc using a userprincipalname and password /// </summary> /// <remarks> /// OrganizationServiceManager stores endpoint metadata and security token. Instance can be reused to construct multiple organization service channels (OrganizationServiceProxy) /// </remarks> public static void BasicConnectionToCrmOnline() { var serverUri = XrmServiceUriFactory.CreateOnlineOrganizationServiceUri("myorganization", CrmOnlineRegion.NA); var manager = new OrganizationServiceManager(serverUri, "*****@*****.**", "password"); using (var proxy = manager.GetProxy()) { //Do organization requests... } }
private static OrganizationServiceManager GetOrganizationServiceProxy() { try { var orgName = "notsmooth"; // CRM Organization Name var userName = "******"; // User Name var password = "******"; // Password var uri = XrmServiceUriFactory.CreateOnlineOrganizationServiceUri(orgName); var serviceManager = new OrganizationServiceManager(uri, userName, password); return(serviceManager); } catch (Exception ex) { throw ex; } }
private void InitializeOrganizationServiceManager() { // If you're using an old version of .NET this will enable TLS 1.2 ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; var serverUri = XrmServiceUriFactory.CreateOnlineOrganizationServiceUri(JobSettings.CrmOrganizationName, CrmOnlineRegion.EMEA); OrganizationServiceManager = new OrganizationServiceManager(serverUri, JobSettings.CrmUserName, JobSettings.CrmUserPassword); // Change max connections from .NET to a remote service default: 2 // Webapp targeted is Basic (Large) // Socket available is 256 for 1 app // We have 3 interfaces : (256 / 3) => 85 sockets per interface // // Resource : https://github.com/projectkudu/kudu/wiki/Azure-Web-App-sandbox#per-sandbox-per-appper-site-numerical-limits ServicePointManager.DefaultConnectionLimit = 85; // Bump up the min threads reserved for this app to ramp connections faster - minWorkerThreads defaults to 4, minIOCP defaults to 4 ThreadPool.SetMinThreads(10, 10); // Turn off the Expect 100 to continue message - 'true' will cause the caller to wait until it round-trip confirms a connection to the server ServicePointManager.Expect100Continue = false; // More info on Nagle at WikiPedia - can help perf (helps w/ conn reliability) ServicePointManager.UseNagleAlgorithm = false; //a new twist to existing connections var knownServicePointConnection = ServicePointManager.FindServicePoint(OrganizationServiceManager.ServiceUri); if (knownServicePointConnection != null) { knownServicePointConnection.ConnectionLimit = ServicePointManager.DefaultConnectionLimit; knownServicePointConnection.Expect100Continue = ServicePointManager.Expect100Continue; knownServicePointConnection.UseNagleAlgorithm = ServicePointManager.UseNagleAlgorithm; } }