private UpdateFile ( Microsoft.Research.DataOnboarding.DomainModel.File modifiedFile ) : Microsoft.Research.DataOnboarding.DomainModel.File | ||
modifiedFile | Microsoft.Research.DataOnboarding.DomainModel.File | |
return | Microsoft.Research.DataOnboarding.DomainModel.File |
public File UpdateFile(File modifiedFile)
{
Check.IsNotNull<File>(modifiedFile, "modifiedFile");
File updatedFile = null;
if (Context.GetEntityState(modifiedFile) == EntityState.Detached)
{
updatedFile = Context.Files.Attach(modifiedFile);
}
else
{
updatedFile = modifiedFile;
}
//set metadata fields
UpdateFileLevelMetadata(modifiedFile);
//set file column
UpdateColumnLevelMetadata(modifiedFile);
Context.SetEntityState<File>(updatedFile, EntityState.Modified);
return updatedFile;
}
public void Update_File_With_FileData_Null_Test() { IFileRepository repository = new FileRepository(testDBContext); var file = repository.GetItem(1, 1); file.BlobId = "TestBlobid"; file.Citation = "Updated Citation"; file.Description = "Updated description"; file.FileMetadataFields = null; file.FileColumns = null; file.FileQualityChecks = null; repository.UpdateFile(file); testDBContext.Commit(); var updatedFile = repository.GetItem(1, 1); Assert.AreEqual(updatedFile.BlobId, "TestBlobid"); Assert.AreEqual(updatedFile.Citation, "Updated Citation"); Assert.AreEqual(updatedFile.Description, "Updated description"); Assert.IsNull(file.FileMetadataFields); Assert.IsNull(file.FileColumns); Assert.IsNull(file.FileQualityChecks); }