我不太清楚问题是什么,但我会尝试解释当前的行为:
我有一个与CRM交互的silverlight应用程序。在按钮上单击某些数据从CRM加载。此应用程序在我的IIS上本地发布。
从主机: - 我使用包含“localhost”的URL来访问我的应用程序,该按钮触发了webservice并且数据已加载。 - 我使用了包含“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);
}
}
函数:getTwoDimensionalArray,只需获取返回的实体集合,并创建一个类“Contacts”的实例来保存返回的值。