Каждый вызов getMyInt будет отдельным диалогом, с небольшим количеством накладных расходов на каждый вызов.Так что нет, это не будет хорошей реализацией, если у вас действительно был цикл, быстро вызывающий getMyInt 1000 раз подряд.Однако, поскольку ваш пример немного надуманный (он ничего не выполняет / не возвращает), трудно предложить лучший способ улучшить его.
Редактировать : я вижу по вашим изменениямчто у вас есть список объектов, содержащих два свойства.Вы используете веб-сервис для получения одного значения от другого.Поэтому наиболее оптимальным способом решения этой проблемы было бы передать все значения в веб-службу одновременно, например:
List<TList> MyList ; // contains 1000 rows
MyWCFclient svc = new MyWCFclient;
var field2Values = MyList.Select(x => x.field2inMyList).ToArray();
var field1Values = svc.getCalc(field2Values);
for (int i = 0; i < field1Values.Length; i++)
{
MyList[i].field1inMyList = field1Values[i];
}
svc.Close();
Оба field2Values
и field1Values
являются массивами и существует только один вызов службы WCF.