using System; using System.Collections.Generic; using System.ComponentModel; using System.ComponentModel.DataAnnotations; using System.IO; using System.Linq; using System.Runtime.Serialization; using System.Text; using System.Threading.Tasks; using System.Windows.Markup; namespace DW5S.DTO { /// /// CPU参估参数模型 /// public class CpuCgDto : IValidatableObject//有复杂验证需要实现IValidatableObject接口,没有则不用 { /// /// 上传后返回的文件名 /// public string file1 { get; set; } /// /// 上传后返回的文件名 /// public string file2 { get; set; } /// /// 开始样点 /// [Range(0,double.MaxValue)] public long smpStart { get; set; } /// /// 样点数(0表示文件末尾,0-1之间的小数表示样点百分比) /// [Range(0, double.MaxValue)] public double smpCount { get; set; } /// /// 采样率(Hz) /// [Range(0, 100e6)] public double samplingRate { get; set; } /// /// 信号带宽(Hz) /// [Range(0, 100e6)] public double BandHz { get; set; } = 0; /// /// 时差中心(us) /// public double dtCenter { get; set; } /// /// 时差范围(us) /// [Range(0, 100000)] public double dtRange { get; set; } /// /// 频差范围(单位Hz,默认16384) /// public double dfRange { get; set; } = 16384; /// /// 信噪比门限dB /// [Range(10, 50)] public double snrThreshold { get; set; } /// /// 模型参数自定义验证(复杂的验证逻辑在这里面写) /// /// /// public IEnumerable Validate(ValidationContext validationContext) { //if (this.Age < 18) // yield return new ValidationResult("你太年轻了", new[] { nameof(this.Age) }); yield return null; } } }