Настройка AutoFixture для связи отношений внешнего ключаC#

Место общения программистов C#
Ответить
Anonymous
 Настройка AutoFixture для связи отношений внешнего ключа

Сообщение Anonymous »

Я пишу некоторые настройки AutoFixture, чтобы сделать создание объектов нашей тестовой базы данных менее многословным. Достаточно легко пропустить включенные объекты, если на них ссылается атрибут ForeignKeyAttribute. Однако, если включенный объект предоставляется с помощью .With(), есть ли способ указать, что свойство с ForeignKeyAttribute принимает значение ключа предоставленного объекта?
При следующих классах:

Код: Выделить всё

using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;

private class JoinedObject
{
[Key]
public Guid Id { get; set; }
}

private class SomeClass
{
[ForeignKey(nameof(JoinedObject))]
public Guid ForeignKey { get; set; }

public JoinedObject? JoinedObject { get; set; }
}
Если тест настроен с указанием SomeClass.JoinedObject:

Код: Выделить всё

var joinedObject = new JoinedObject { Id = Guid.New() };
var someObject = this.Fixture.Build()
.With(x => x.JoinedObject, joinedObject)
.Create()
есть ли способ вмешаться и назначить joinObject.Id некоторомуObject.ForeignKey?


Подробнее здесь: https://stackoverflow.com/questions/798 ... ationships
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»