Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Web services Webservice没有';使用IP地址时不会在主机上触发_Web Services_Iis_Dynamics Crm 2011_Ip Address_Publish - Fatal编程技术网

Web services Webservice没有';使用IP地址时不会在主机上触发

Web services Webservice没有';使用IP地址时不会在主机上触发,web-services,iis,dynamics-crm-2011,ip-address,publish,Web Services,Iis,Dynamics Crm 2011,Ip Address,Publish,我不太清楚问题是什么,但我将尝试解释当前的行为: 我有一个与CRM交互的silverlight应用程序。单击按钮,从CRM加载一些数据。此应用程序在我的IIS上本地发布 从主机: -我使用了包含“localhost”的URL来访问我的应用程序,按钮启动了Web服务并加载了数据。 -我使用了包含“IP地址”的URL,但是按钮什么也没做,也没有出现脚本错误。(我的问题在这里) 从网络上的另一台计算机: -我使用了包含“IP地址”的URL,效果很好 有人能告诉我为什么我不能在本地使用IP地址访问我的应

我不太清楚问题是什么,但我将尝试解释当前的行为:

我有一个与CRM交互的silverlight应用程序。单击按钮,从CRM加载一些数据。此应用程序在我的IIS上本地发布

从主机: -我使用了包含“localhost”的URL来访问我的应用程序,按钮启动了Web服务并加载了数据。 -我使用了包含“IP地址”的URL,但是按钮什么也没做,也没有出现脚本错误。(我的问题在这里)

从网络上的另一台计算机: -我使用了包含“IP地址”的URL,效果很好

有人能告诉我为什么我不能在本地使用IP地址访问我的应用程序吗

编辑:

单击按钮后的代码:

   private void Contacts_Click(object sender, RoutedEventArgs e)
    {
        try
        {
            QueryExpression query = new QueryExpression();
             query.EntityName = "contact";
            query.ColumnSet = new ColumnSet() { AllColumns = true, Columns = new System.Collections.ObjectModel.ObservableCollection<string>(new String[]{ "" })};

            query.PageInfo = new PagingInfo { Count = MaxRecordsToReturn, PageNumber = 1, PagingCookie = null };
            OrderExpression oe = new OrderExpression();
            oe.AttributeName = "fullname";
            oe.OrderType = OrderType.Ascending;
            query.Orders = new System.Collections.ObjectModel.ObservableCollection<OrderExpression>(new OrderExpression[] { oe }) ;
            OrganizationRequest request = new OrganizationRequest() { RequestName = "RetrieveMultiple" };
            request["Query"] = query;

            IOrganizationService service = SilverlightUtility.GetSoapService();

            service.BeginExecute(request, new AsyncCallback(Contact_ClickCallback), service);
        }
        catch (Exception ex)
        {
            //this.ReportError(ex);
        }
    }

    private void Contact_ClickCallback(IAsyncResult result)
    {
        try
        {
            OrganizationResponse response = ((IOrganizationService)result.AsyncState).EndExecute(result);
            EntityCollection results = (EntityCollection)response["EntityCollection"];
            System.Collections.ObjectModel.ObservableCollection<StudentClass> resultsarray=getTwoDimensionalArray(results);

            Dispatcher.BeginInvoke(delegate { EntityDataGrid.ItemsSource = resultsarray; });


        }
        catch (Exception ex)
        {
            //this.ReportError(ex);
        }
    }
private void Contacts\u单击(对象发送者,路由目标)
{
尝试
{
QueryExpression query=新建QueryExpression();
query.EntityName=“联系人”;
query.ColumnSet=new ColumnSet(){AllColumns=true,Columns=new System.Collections.ObjectModel.ObservableCollection(新字符串[]{”“});
query.PageInfo=new pagininfo{Count=MaxRecordsToReturn,PageNumber=1,PagingCookie=null};
OrderExpression oe=新的OrderExpression();
oe.AttributeName=“全名”;
oe.OrderType=OrderType.Ascending;
query.Orders=new System.Collections.ObjectModel.ObservableCollection(new OrderExpression[]{oe});
OrganizationRequest=new OrganizationRequest(){RequestName=“RetrieveMultiple”};
请求[“查询”]=查询;
IOOrganizationService=SilverlightUtility.GetSoapService();
BeginExecute(请求、新异步回调(联系人单击回调)、服务);
}
捕获(例外情况除外)
{
//本报告错误(ex);
}
}
私有无效联系人\u单击回调(IAsyncResult结果)
{
尝试
{
OrganizationResponse=((IOOrganizationService)结果.AsyncState).EndExecute(结果);
EntityCollection结果=(EntityCollection)响应[“EntityCollection”];
System.Collections.ObjectModel.ObservableCollection resultsarray=getTwoDimensionalArray(结果);
Dispatcher.BeginInvoke(委托{EntityDataGrid.ItemsSource=resultsarray;});
}
捕获(例外情况除外)
{
//本报告错误(ex);
}
}

函数:getTwoDimensionalArray,只需获取返回的实体集合并创建一个类“Contacts”的实例来保存返回的值。

听起来像是一个环回检查问题。有关详细信息,请参阅这篇知识库文章:

您能在本地ping IP地址吗?是的,我得到了回复当我使用本地计算机的IP地址时,我的网站的html将打开,问题就在我点击按钮启动服务的时候。你能在按钮后面发布代码,并找出工作测试和非工作测试的执行差异吗?我用隐藏的代码编辑了我的帖子,但我不确定不工作的部分,我想这就是全部,我的意思是根本没有反应,就像按钮死了一样。谢谢你的回复,听起来像是这样,但我不能百分之百地回答,因为我没有收到任何错误消息,它只是不起任何作用。这不是一台私人电脑,所以在我完全确定这是问题之前,我对更改注册表犹豫不决。但当从浏览器手动调用时,这两种方法都有效?Silverlight应用程序可能正在吞没401。在应用程序进行调用时,尝试运行Fiddler(HTTP调试器)。Fiddler将向您显示HTTP请求,我打赌您将在那里看到401。