@IBOutlet weak var batsmenScoreStepper:UIStepper!
@IBAction func resetScoreButton(_ sender: Any) {
batsmenScoreStepper.value = 0.0;
displayBatsmenOneScoreLabel.text = "\(batsmenScoreStepper.value)"
}
Вы должны сначала взять выход из UIStepper
и сбросить его.
Это может быть установлено в узле ServiceReference. Файл ClientConfig в приложении Silverlight.
Это может быть установлено, но существует верхний предел, который определяется базовой библиотекой HTTP (я думаю ее пять минут). Обратите внимание, что использование более высокого значения отступит к тому, каков верхний предел. Кроме того, знайте, что Вы, возможно, должны настроить тайм-аут на сервере также.
Я считаю, что вместо изменения тайм-аута вам следует реализовать обратный вызов на сервер на основе таймера из приложения Silverlight, чтобы сеанс не истек. Это устранит накладные расходы, связанные с более длительными тайм-аутами для всего вашего приложения.
Принятый здесь ответ не сработал для меня. Вместо этого мне пришлось преобразовать базовый канал в IContextChannel и установить для него OperationTimeout.
Для этого мне пришлось создать новый файл с частичным классом, который соответствовал имени ServiceReference. В моем случае у меня был PrintReportsService. Код ниже.
using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
namespace RecipeManager.PrintReportsService
{
public partial class PrintReportsClient : System.ServiceModel.ClientBase<RecipeManager.PrintReportsService.PrintReports>, RecipeManager.PrintReportsService.PrintReports
{
public void SetOperationTimeout(TimeSpan timeout)
{
((System.ServiceModel.IContextChannel)base.Channel).OperationTimeout = timeout;
}
}
}
Затем, когда я создаю клиента, я делаю следующее:
PrintReportsService.PrintReportsClient client = new RecipeManager.PrintReportsService.PrintReportsClient();
client.SetOperationTimeout(new TimeSpan(0, 4, 0));
Вот и все! Дополнительная информация доступна здесь , но фрагмент кода в этом сообщении не компилируется.