小编Gre*_*inn的帖子

FluentValidation - 仅当NOT NULL时,检查值才是日期

我有一个bool以及一个可以为null的DateTime属性.仅当bool设置为true时才需要DateTime ...如果bool为true,我想验证日期.

到目前为止我有这个表达...

When(p => p.HasVisa == true, () => RuleFor(p => p.VisaExpiryDate).NotNull());
Run Code Online (Sandbox Code Playgroud)

现在我尝试使用.Must扩展名和我的自定义BeAValidDate方法验证该表达式中的日期...

When(p => p.HasVisa == true, () => RuleFor(p => p.VisaExpiryDate).NotNull().Must(BeAValidDate));

private bool BeAValidDate(DateTime date)
{
  if (date == default(DateTime))
    return false;
  return true;
}
Run Code Online (Sandbox Code Playgroud)

但是.Must扩展名不允许我对可以为空的DateTime进行操作.如何在可以为空的日期进行此类验证?

谢谢

datetime fluentvalidation

11
推荐指数
2
解决办法
6841
查看次数

在Windows窗体应用程序中动态增加/减少视频的速度

我正在VS 2010中构建一个Windows窗体应用程序,它可以根据用户输入的速度平滑地增加或减少视频播放的速度.

我试过几个途径..

1.)使用AudioVideoPlayback DirectX类 - 我通过基​​于计时器设置视频的当前位置来设置视频的速度,并根据用户输入增加或减少该值.虽然这在我的电脑上运行,但它在我们的低端目标PC上却落后很多.任何人都可以想到一种更有效的方法来增加/降低使用这个类的播放速度吗?

2.)我已经尝试过Windows Media Player ActiveX控件,并尝试动态设置速率/位置,但即使在我的开发PC上,这也是非常跳跃和滞后的

3.)我尝试过VS 2010附带的Apple QuickTime Control 2.0 COM组件,而且它也非常迟钝.

4.)我正在试图弄清楚如何在Shockwave Flash对象控件上设置速度,但还没有找到它

任何人都可以建议其他途径探索?我只需要能够根据用户输入平滑地增加/减少视频播放的速度而不会延迟.我不关心视频需要的格式,所有视频都可以转换为所需的格式.

任何帮助/想法将不胜感激.

谢谢

c# video performance winforms

5
推荐指数
1
解决办法
1109
查看次数

TeamCity:如何在构建步骤之间创建延迟

我遇到了TeamCity的问题,构建了一些Android APK.

我有一个QA和Release APK,每个都有自己的构建步骤.

问题是Release构建步骤永远不会完成,因为它似乎访问了QA构建步骤仍在使用的文件.

我尝试在两者之间添加一个Powershell构建步骤,使用

Start-Sleep -Seconds 10
Run Code Online (Sandbox Code Playgroud)

但是,这似乎并不是TeamCity等待的最佳原因.

有人知道如何在构建步骤之间创建暂停吗?

谢谢

powershell teamcity android delay custom-build-step

5
推荐指数
2
解决办法
3818
查看次数