0
서비스에 대한 내부 호출에는 잘 작동하는 asp.net 페이지가 있지만, 외부에서 접하는 사이트에서 사용할 경우에는 전혀 작동하지 못합니다. 내부적으로 액세스하지만 IFD 인터페이스를 사용할 때 얻을 모든CrmImpersonator 및 IFD
'Microsoft.Crm.WebServices.Crm2007.CookieAndSoapHeaderAuthenticationProvider, Microsoft.Crm.WebServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' doesn't exist.
Parameter name: Microsoft.Crm.WebServices.Crm2007.CookieAndSoapHeaderAuthenticationProvider, Microsoft.Crm.WebServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.ArgumentException: 'Microsoft.Crm.WebServices.Crm2007.CookieAndSoapHeaderAuthenticationProvider, Microsoft.Crm.WebServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' doesn't exist.
Parameter name: Microsoft.Crm.WebServices.Crm2007.CookieAndSoapHeaderAuthenticationProvider, Microsoft.Crm.WebServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
어떤 아이디어가 크게 될
public string orgname;
public string crmurl;
public string metaurl;
public bool offline;
protected void Page_Load(object sender, EventArgs e)
{
#region CRM URLs and Organization Name
//Determine Offline State from Host Name
if (Request.Url.Host.ToString() == "127.0.0.1")
{
#region offline
offline = true;
//Retrieve the Port and OrgName from the Registry
//RegistryKey regkey = Registry.CurrentUser.OpenSubKey("Software\\Microsoft\\MSCRMClient");
//orgname = regkey.GetValue("ClientAuthOrganizationName").ToString();
string portnumber = regkey.GetValue("CassiniPort").ToString();
//Construct the URLs
string baseurl = "http://localhost:" + portnumber + "/mscrmservices/2007/";
crmurl = baseurl + "crmservice.asmx";
metaurl = baseurl + "metadataservice.asmx";
#endregion
}
else
{
offline = false;
//Retrieve the URLs from the Registry
//RegistryKey regkey = Registry.LocalMachine.OpenSubKey("SOFTWARE\\Microsoft\\MSCRM");
//string ServerUrl = regkey.GetValue("ServerUrl").ToString();
string ServerUrl = "http://192.168.1.152:5555/MSCRMServices";
crmurl = ServerUrl + "/2007/crmservice.asmx";
metaurl = ServerUrl + "/2007/metadataservice.asmx";
Response.Write("ServerURL " + ServerUrl + "<br>");
Response.Write("CRMURL: " + crmurl + "<br>");
Response.Write("MetaURL: " + metaurl + "<br>");
//Retrieve the Query String from the current URL
if (Request.QueryString["orgname"] == null)
{
orgname = string.Empty;
}
else
{
//Query String
string orgquerystring = Request.QueryString["orgname"].ToString();
if (string.IsNullOrEmpty(orgquerystring))
{
orgname = string.Empty;
}
else
{
orgname = orgquerystring;
}
}
if (string.IsNullOrEmpty(orgname))
{
//Windows Auth URL
if (Request.Url.Segments[2].TrimEnd('/').ToLower() == "isv")
{
orgname = Request.Url.Segments[1].TrimEnd('/').ToLower();
}
//IFD URL
if (string.IsNullOrEmpty(orgname))
{
string url = Request.Url.ToString().ToLower();
int start = url.IndexOf("://") + 3;
orgname = url.Substring(start, url.IndexOf(".") - start);
}
}
Response.Write(orgname + "<br>");
}
#endregion
}