我读了一个zip文件列表,每个文件里面都有一个pdf文件。为了阅读本文,我使用了SSIS包中的脚本组件。一旦我阅读了pdf文件,我想把它的二进制版本保存在sql server表中。存储文档正文的列是VARBINARY(MAX(类型。
这是我用来读取编码部分的代码:
{
using (ZipArchive Archive = ZipFile.OpenRead(Row.documentpath))
foreach (ZipArchiveEntry Entry in Archive.Entries)
{
if (Path.GetExtension(Entry.Name) = "pdf")
{
using (StreamReader r = new StreamReader(Entry.Open()))
FullFile = r.ReadToEnd();
byte[] arr = System.Text.Encoding.UTF8.GetBytes(FullFile);
接下来,我有一个Kingswaysoft组件,它读取这个表,其中每一行都是不同的文件,并将它们加载到Dynamics中。
一切都没有错误,但当我去检查注释实体时,我打开pdf文件,里面是空的、空白的页面。
我相信这与编码部分有关。你能帮我吗?
在这种情况下,我们建议使用SSIS Productivity Pack,而不是脚本组件。使用压缩任务,您可以解压缩文件,然后使用我们的高级文件系统源组件读取提取的PDF文件,并使用我们的CRM目标组件将其写入注释实体。
如果您需要任何进一步的帮助,请毫不犹豫地联系我们的支持团队。
在尝试创建"activitymimeattachment";
我通过这篇文章找到了一个解决方案:
我将arr
变量的拼写错误改为var
。我真的不知道为什么以前它不起作用,但现在它起作用了。