Я использую AutoFixture для создания данных для структуры, включающей родительский объект и сложные дочерние объекты, например:
public class Parent
{
public int Id { get; set; }
public string Name { get; set; }
public Child[] Children { get; set; }
}
public class Child
{
public string Name { get; set; }
public int ParentId { get; set; }
}
Есть ли способ автоматически установить свойство ParentId
созданного объекта Child
для идентификатора, назначенного родительскому объекту? Прямо сейчас мое решение выглядит так, что не очень красиво:
var parent = fixture.Build<Parent>().Without(p => p.Children).CreateAnonymous();
parent.Children = fixture.CreateMany<Child>(10).ToArray();
foreach (var i in parent.Children)
{
i.ParentId = parent.Id;
}
Кажется, что есть лучший способ сделать это, который я упускаю? Я посмотрел на создание пользовательского ISpecimenBuilder
, но не сумел решить его, что путь.
Я использую инструмент «HTML Match» для сравнения двух HTML-файлов. Поскольку мне приходится сравнивать много файлов, я создаю пакетный файл, подобный следующему. Например, я даю только пять наборов файлов.
cd "C:\Program Files\HTML Match"
HTMLMATCH.EXE "D:\Raj\compare1\a1.html" "D:\Raj\compare2\a1.html" "D:\Raj\compare_res\a1.html"
HTMLMATCH.EXE "D:\Raj\compare1\a2.html" "D:\Raj\compare2\a2.html" "D:\Raj\compare_res\a2.html"
HTMLMATCH.EXE "D:\Raj\compare1\a3.html" "D:\Raj\compare2\a3.html" "D:\Raj\compare_res\a3.html"
HTMLMATCH.EXE "D:\Raj\compare1\a4.html" "D:\Raj\compare2\a4.html" "D:\Raj\compare_res\a4.html"
HTMLMATCH.EXE "D:\Raj\compare1\a5.html" "D:\Raj\compare2\a5.html" "D:\Raj\compare_res\a5.html"
При выполнении этого пакетного файла в командной строке сравнивается и получается результат только в первой строке, т.е. только в «a1.html». Затем выполнение прекращается.