私は次のクラスを持っています:
public abstract class BaseGridViewModel
{
protected BaseGridViewModel()
{
Timer = new List<long>();
}
public List<long> Timer { get; set; }
}
public class CityReportViewModel : BaseGridViewModel
{
public IEnumerable<City.Grid> Grid { get; set; }
}
私のアクションコードでは、次のようなタイミングを実行しています。
var vm = new CityReportViewModel();
var sw = Stopwatch.StartNew();
try {
//
vm.Timer.Add(sw.ElapsedMilliseconds);
//
vm.Timer.Add(sw.ElapsedMilliseconds);
//
// Lots more vm.Timer.Add lines ...
} catch (Exception e) {
log(e);
} finally {
sw.Stop();
}
多くのタイミングを実行するため、コントローラーでvm.Timer.Addコードを何度も繰り返します。
ViewModelsに変更を加えることで、タイマーのコーディングを簡素化する方法はありますか。私が考えているのは、タイマーをViewModelsのフィールドとして設定してから、新しいタイミングイベントを記録することをViewModelに通知する方法があることです。