Я загрузил пример приложения для использования некоторых веб-сервисов с онлайн-системой.Ошибка при возврате значения в C# 2.0
Я не уверен, нужен ли все код ниже, но это то, что я получил, и что я пытаюсь сделать, это использовать функцию поиска.
Я начинаю по телефону searchCustomer с ID у меня есть:
partnerRef.internalId = searchCustomer(customerID);
И код searchCustomer:
private string searchCustomer(string CustomerID)
{
string InternalID = "";
CustomerSearch custSearch = new CustomerSearch();
CustomerSearchBasic custSearchBasic = new CustomerSearchBasic();
String nameValue = CustomerID;
SearchStringField entityId = null;
entityId = new SearchStringField();
[email protected] = SearchStringFieldOperator.contains;
entityId.operatorSpecified = true;
entityId.searchValue = nameValue;
custSearchBasic.entityId = entityId;
String statusKeysValue = "";
SearchMultiSelectField status = null;
if (statusKeysValue != null && !statusKeysValue.Trim().Equals(""))
{
status = new SearchMultiSelectField();
[email protected] = SearchMultiSelectFieldOperator.anyOf;
status.operatorSpecified = true;
string[] nskeys = statusKeysValue.Split(new Char[] { ',' });
RecordRef[] recordRefs = new RecordRef[statusKeysValue.Length];
for (int i = 0; i < nskeys.Length; i++)
{
RecordRef recordRef = new RecordRef();
recordRef.internalId = nskeys[i];
recordRefs[i] = recordRef;
}
status.searchValue = recordRefs;
custSearchBasic.entityStatus = status;
}
custSearch.basic = custSearchBasic;
SearchResult response = _service.search(custSearch);
if (response.status.isSuccess)
{
processCustomerSearchResponse(response);
if (seachMoreResult.status.isSuccess)
{
processCustomerSearchResponse(seachMoreResult);
return InternalID;
}
else
{
_out.error(getStatusDetails(seachMoreResult.status));
}
}
else
{
_out.error(getStatusDetails(response.status));
}
return InternalID;
}
В приведенном выше processCustomerSearchResponse коде вызывается
processCustomerSearchResponse(response);
код для этой функции:
public string processCustomerSearchResponse(SearchResult response)
{
string InternalID = "";
Customer customer;
customer = (Customer)records[0];
InternalID = customer.internalId;
return InternalID;
}
Что исходный код сделал, это написать какой-то вывод в консоли, но вместо этого я хочу вернуть InternalID. Когда я отлаживаю приложение InternalID в processCustomerSearchResponse, содержит ID, который я хочу, но я не знаю, как передать его поисковому клиенту, чтобы функция также возвращала идентификатор. При отладке searchCustomer InternalID всегда имеет значение null. Я не уверен, как отредактировать код под response.status.isSuccess
, чтобы вернуть InternalID, какие-нибудь идеи?
Заранее спасибо.
Да, конечно, спасибо Kyle – Morgan 2010-11-23 00:06:29