我有一个使用MIP SDK保护pdf的API。它目前在。net Framework 4.6.1中运行良好。我试图将相同的代码合并到。net Core 3.1 API中,但是我在使用MIP保护它们后会损坏pdf。跳过保护会导致可以打开PDF。不确定是否需要一些东西使MIP在。net Core中工作?使用Microsoft.InformationProtection.File 1.8.94
try
{
MemoryStream memoryStream = new MemoryStream(file);
var handler = Task.Run(async () => await fileEngine.CreateFileHandlerAsync(memoryStream, fileName, true)).Result;
_logger.Debug().Message("Created file handler").Write();
Helpers helper = new Helpers();
ProtectionSettings settings = new ProtectionSettings();
handler.SetProtection(helper.CreateAdhocDescriptor(userEmail, canPrint, accessExpration), settings);
_logger.Debug().Message($"Set protection. Expiration date: {accessExpration}").Write();
MemoryStream protectedFile = new MemoryStream();
var result = Task.Run(async () => await handler.CommitAsync(protectedFile)).Result;
_logger.Debug().Message("Protected file").Write();
return protectedFile;
}
catch (Exception ex)
{
_logger.Error().Message("Failed to protect file").Exception(ex).Write();
throw ex;
}
我已经测试过了,但是无法重现这个问题。你还在遇到这个问题吗?