Tôi đang sử dụng thư viện .NET tuyệt vời AutoPoco để tạo thử nghiệm và Dữ liệu hạt giống.Tạo một giá trị phụ thuộc vào giá trị khác với AutoPoco
Trong mô hình của tôi, tôi có 2 thuộc tính ngày, StartDate và EndDate.
Tôi muốn ngày kết thúc là 3 giờ sau ngày bắt đầu.
tôi đã tạo ra một nguồn tùy chỉnh dữ liệu cho autopoco dưới đây mà trả về một Datetime ngẫu nhiên giữa một phút và ngày tối đa
class DefaultRandomDateSource : DatasourceBase<DateTime>
{
private DateTime _MaxDate { get; set; }
private DateTime _MinDate { get; set; }
private Random _random { get; set; }
public DefaultRandomDateSource(DateTime MaxDate, DateTime MinDate)
{
_MaxDate = MaxDate;
_MinDate = MinDate;
}
public override DateTime Next(IGenerationSession session)
{
var tspan = _MaxDate - _MinDate;
var rndSpan = new TimeSpan(0, _random.Next(0, (int) tspan.TotalMinutes), 0);
return _MinDate + rndSpan;
}
}
Nhưng trong cấu hình AutoPoco của làm thế nào tôi có thể nhận được EndDate tôi để được nói, 3 giờ sau khi ngày bắt đầu tự động?
Đây là autopoco cấu hình
IGenerationSessionFactory factory = AutoPocoContainer.Configure(x =>
{
x.Conventions(c => { c.UseDefaultConventions(); });
x.AddFromAssemblyContainingType<Meeting>();
x.Include<Meeting>()
.Setup((c => c.CreatedBy)).Use<FirstNameSource>()
.Setup(c => c.StartDate).Use<DefaultRandomDateSource>(DateTime.Parse("21/05/2011"), DateTime.Parse("21/05/2012"));
});
bạn có muốn tất cả ngày kết thúc sau 3 giờ kể từ ngày bắt đầu được tạo hoặc chỉ một số khác biệt ngẫu nhiên? – TheVillageIdiot
Cảm ơn phản hồi, Lý tưởng là sự khác biệt ngẫu nhiên giữa giá trị cực đại và cực đại. – MrBliz