CRM2013 : fix bug for OrganizationId with '.'
This commit is contained in:
parent
9a18300889
commit
241fdc0fe4
2 changed files with 16 additions and 2 deletions
|
@ -35,6 +35,7 @@ using WebsitePanel.Providers.CRM;
|
|||
using WebsitePanel.Providers.DNS;
|
||||
using WebsitePanel.Providers.HostedSolution;
|
||||
using WebsitePanel.Providers.ResultObjects;
|
||||
using System.Text.RegularExpressions;
|
||||
|
||||
namespace WebsitePanel.EnterpriseServer
|
||||
{
|
||||
|
@ -237,6 +238,12 @@ namespace WebsitePanel.EnterpriseServer
|
|||
return value;
|
||||
}
|
||||
|
||||
public static string GetOrganizationCRMUniqueName(string orgName)
|
||||
{
|
||||
return Regex.Replace(orgName, @"[^\dA-Za-z]", "-", RegexOptions.Compiled);
|
||||
}
|
||||
|
||||
|
||||
public static OrganizationResult CreateOrganization(int organizationId, string baseCurrencyCode, string baseCurrencyName, string baseCurrencySymbol, string regionName, int userId, string collation, int baseLanguageCode)
|
||||
{
|
||||
OrganizationResult res = StartTask<OrganizationResult>("CRM", "CREATE_ORGANIZATION");
|
||||
|
@ -329,7 +336,7 @@ namespace WebsitePanel.EnterpriseServer
|
|||
if (port != string.Empty)
|
||||
port = ":" + port;
|
||||
|
||||
string strDomainName = string.Format("{0}.{1}", org.OrganizationId,
|
||||
string strDomainName = string.Format("{0}.{1}", GetOrganizationCRMUniqueName(org.OrganizationId),
|
||||
serviceSettings[Constants.IFDWebApplicationRootDomain]);
|
||||
org.CrmUrl = string.Format("{0}://{1}{2}", schema, strDomainName, port);
|
||||
|
||||
|
|
|
@ -183,12 +183,19 @@ namespace WebsitePanel.Providers.HostedSolution
|
|||
return orgResponse.Details;
|
||||
}
|
||||
|
||||
public virtual string GetOrganizationUniqueName(string orgName)
|
||||
{
|
||||
return Regex.Replace(orgName, @"[^\dA-Za-z]", "-", RegexOptions.Compiled);
|
||||
}
|
||||
|
||||
protected virtual Uri GetCRMOrganizationUrl(string orgName)
|
||||
{
|
||||
//string url = "https://" + ProviderSettings[Constants.AppRootDomain] + ":" + ProviderSettings[Constants.Port] + "/" + orgName + "/XRMServices/2011/Organization.svc";
|
||||
|
||||
string url;
|
||||
|
||||
orgName = GetOrganizationUniqueName(orgName);
|
||||
|
||||
string organizationWebServiceUri = ProviderSettings[Constants.OrganizationWebService];
|
||||
|
||||
if (String.IsNullOrEmpty(orgName))
|
||||
|
@ -723,7 +730,7 @@ namespace WebsitePanel.Providers.HostedSolution
|
|||
|
||||
OrganizationResult ret = StartLog<OrganizationResult>("CreateOrganizationInternal");
|
||||
|
||||
organizationUniqueName = Regex.Replace(organizationUniqueName, @"[^\dA-Za-z]", "-", RegexOptions.Compiled);
|
||||
organizationUniqueName = GetOrganizationUniqueName(organizationUniqueName);
|
||||
|
||||
// calculate UserRootPath
|
||||
string ldapstr = "";
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue