public static bool GetCrmServiceClient(DTE dte) { var check = UtilityPackage.GetGlobal("CrmServiceClient", dte); if (check == null) { var form = new FormConnection2(dte); if (form.ShowDialog() == DialogResult.Cancel) { return(false); } if (form.Check == "1") { var loginForm = new FormLogin(); loginForm.ConnectionToCrmCompleted += loginForm_ConnectionToCrmCompleted; loginForm.ShowDialog(); if (loginForm.CrmConnectionMgr != null && loginForm.CrmConnectionMgr.CrmSvc != null && loginForm.CrmConnectionMgr.CrmSvc.IsReady) { UtilityPackage.SetGlobal("CrmUrl", XrmHelper.ConnectedUrl(loginForm.CrmConnectionMgr.CrmSvc), dte); UtilityPackage.SetGlobal("CrmServiceClient", loginForm.CrmConnectionMgr.CrmSvc, dte); } else { UtilityPackage.SetDTEStatusBar(dte, "Connection failed"); return(false); } } else { UtilityPackage.SetGlobal("CrmUrl", XrmHelper.ConnectedUrl(form.CrmServiceClient), dte); UtilityPackage.SetGlobal("CrmServiceClient", form.CrmServiceClient, dte); } } return(true); }
private static bool IsValid(CommandLineArgs arguments) { if (arguments.SdkLogin.Length > 0 && arguments.SdkLogin.ToLower() == "yes") { ; } else { if (arguments.Connection.Length == 0) { CliLog.WriteLine(CliLog.ColorError, $"/conn: missing"); return(false); } } if (arguments.Json.Length == 0) { CliLog.WriteLine(CliLog.ColorError, $"/json: missing"); return(false); } var jsonFile = Path.Combine(CurrentDirectory, arguments.Json); if (!File.Exists(jsonFile)) { CliLog.WriteLine(CliLog.ColorError, $"/json: DynamicsCrm.DevKit json missing [{jsonFile}]"); return(false); } if (arguments.Type.Length == 0) { CliLog.WriteLine(CliLog.ColorError, $"/type: missing"); return(false); } if (arguments.Profile.Length == 0) { CliLog.WriteLine(CliLog.ColorError, $"/profile: missing"); return(false); } if (arguments.SdkLogin.Length > 0 && arguments.SdkLogin.ToLower() == "yes") { if (arguments.Type.ToLower() != "proxytypes") { if (!IsConnectedDynamics365BySdkLogin()) { CliLog.WriteLine(CliLog.ColorError, $"SdkLogin failed !!!"); return(false); } } } else { if (!IsConnectedDynamics365(XrmHelper.BuildConnectionString(arguments.Connection))) { CliLog.WriteLine(CliLog.ColorError, $"/conn: Cannot connect to Dynamics 365 with your Connection String: {XrmHelper.BuildConnectionStringLog2(arguments.Connection)}"); return(false); } } if (CrmServiceClient != null) { CliLog.WriteLine(CliLog.ColorWhite, "|"); CliLog.WriteLine(CliLog.ColorWhite, "|", CliLog.ColorGreen, "Connected: ", CliLog.ColorWhite, XrmHelper.ConnectedUrl(CrmServiceClient)); CliLog.WriteLine(CliLog.ColorWhite, "|", CliLog.ColorGreen, "Connection Timeout (seconds): ", CliLog.ColorWhite, CrmServiceClient.MaxConnectionTimeout.TotalSeconds.ToString("#,###")); } CliLog.WriteLine(CliLog.ColorWhite, "|"); return(true); }