У меня есть следующее сопоставление Entity Framework (v6.1.3):
public class FileStoreDocumentEntityMapping : EntityTypeConfiguration<FileStoreDocumentEntity>
{
public FileStoreDocumentEntityMapping()
{
Property(x => x.FileStoreDownloadUrl)
.HasColumnName("FileStoreDetailsUrl")
.HasColumnType("varchar")
.HasMaxLength(1000);
Property(x => x.FileStoreVersion)
.HasColumnName("FileStoreVersion")
.HasColumnType("varchar")
.HasMaxLength(100);
}
}
Оба столбца имеют тип данных = "varchar" в моей базе данных и правильные размеры:
Однако некоторые из моих модульных тестов не работают с этой ошибкой:
"System.InvalidOperationException: последовательность не содержит совпадающих элементов"
Я прочитал в сообщении по теме, что вы можете получить указанную выше ошибку, если пройдете недопустимый тип для метода HasColumnType
, но в моем случае "varchar" должен быть допустимым.
Есть идеи, что может быть не так?
Вот как эти свойства определены в моем объекте:
public virtual string FileStoreVersion
{
get;
set;
}
public virtual string FileStoreDetailsUrl
{
get;
set;
}
Вот пример одного теста, который не проходит в первой строке:
[TestMethod]
public void Delete_ReturnsSuccess()
{
_context.DistributionListSelectionCriteriaDepartmentEntities.Add(_distributionListSelectionCriteriaDepartmentEntity);
_context
в данном случае имеет тип MemoryEnterprisePaycorCodeFirstContext
:
private void InitializeTestObjects()
{
_context = new MemoryEnterprisePaycorCodeFirstContext();
Который наследуется от моего public class EnterprisePaycorCodeFirstContext : DbContext
В этом классе я инициализирую сопоставления сущностей:
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Configurations.Add(new FileStoreDocumentEntityMapping());
Может ли это быть связано с тем, что я использую Effort MemoryContext, а не реальный контекст БД?
public class MemoryEnterprisePaycorCodeFirstContext : EnterprisePaycorCodeFirstContext
{
public MemoryEnterprisePaycorCodeFirstContext()
: base(DbConnectionFactory.CreateTransient())
{
Database.CreateIfNotExists();
}
System.InvalidOperationException: Sequence contains no matching element
? - person philreed   schedule 02.11.2018DistributionListSelectionCriteriaDepartmentEntities
- person Adolfo Perez   schedule 02.11.2018