C# 使用不带WPF的Dispatchermer
我正在尝试在没有WPF的情况下使用C# 使用不带WPF的Dispatchermer,c#,wpf,C#,Wpf,我正在尝试在没有WPF的情况下使用Dispatchermer。如果没有,则不会触发勾号事件。请参阅下面的代码示例。有没有办法让它发挥作用 我为什么要这么做?我正在为在视图模型中挂钩的类实现一个单元测试。该类使用Dispatcher static void Main(string[] args) { DispatcherTimer timer; timer = new DispatcherTimer(); timer.Interval
Dispatchermer
。如果没有,则不会触发勾号事件。请参阅下面的代码示例。有没有办法让它发挥作用
我为什么要这么做?我正在为在视图模型中挂钩的类实现一个单元测试。该类使用Dispatcher
static void Main(string[] args)
{
DispatcherTimer timer;
timer = new DispatcherTimer();
timer.Interval = TimeSpan.FromMilliseconds(50);
timer.Tick += (s, e) => Console.WriteLine("Hello");
timer.Start();
Console.Read();
}
很遗憾,您无法使用dispatcher,因为控制台应用程序中没有dispatcher 这回答了你的问题吗?为什么不使用
系统.计时器.计时器
?当没有调度程序时,使用调度程序是没有意义的……如果您想能够对视图模型进行单元测试,您应该模拟掉调度程序的依赖关系。mm8:是的,模拟计时器。想想看。但我的目标是真正测试计时器,因为我遇到了计时器没有启动的情况(在WPF中)。我现在直接从单元测试调用Timer.Tick()函数,这有类似的效果。@Kyle:我已经看过那篇文章了。非常感谢。似乎我在单元测试中使用了其他一些策略。