У меня есть приложение с несколькими контекстами для EF, сначала код, сначала сервер, и все динамические.У меня есть класс, который я вызываю, чтобы получить эти контексты в моем приложении.Каждый контекст реализует интерфейс, такой как:
public interface IDatabaseContextSwitcher
{
IVGSContext GetDatabase(string organization);
IVGSContext GetDatabase(Guid organizationGuid, string email);
IVGSServerConn GetServerDatabase(string databaseName);
IAuthContext GetAuthorizationDatabase();
}
. Поэтому у меня есть класс, который реализует экземпляры этих интерфейсов в приложении.(VGSContext, VGSServerConn и AuthContext).
Я пытаюсь проверить их в своем тестовом проекте.Я сделал новые классы из интерфейсов, планируя подключить некоторые DbSets к этим новым классам, а затем проверить, что мои контроллеры работают правильно.
Однако я не могу понять, как инициализироватьDBSets.
Например, при Add добавляется следующее:
public AuthContextForTesting()
{
Organizations.Add(new Organization()
{OrganizationName = "Test1", PK_Organization = Guid.Parse("34CE4F83-B3C9-421B-B1F3-42BBCDA9A004")});
var cnt = Organizations.Count();
}
public DbSet<Organization> Organizations { get; set; }
Я попытался инициализировать DBSet с помощью: Organizations = new DbSet ();Но выдает ошибку, что это не разрешено из-за разрешений.
Как настроить исходные наборы dbsets в коде для моих тестов?