Как ввести сжатый PDF-файл в виде вложений в MS Dynamics CRM 2011? - PullRequest
0 голосов
/ 13 ноября 2018

Я работаю на клиента, и клиенту необходимо загрузить файлы размером 6 МБ в MS Dynamics CRM.Клиент, имеющий файлы .pdf, .csv для загрузки в Dynamics CRM.Теперь, если мы сможем сжать эти файлы перед загрузкой в ​​Dynamics CRM, это будет работать нормально.Я пытаюсь исправить требование, используя приведенный ниже код.Это работает и сжимает файл, но когда мы загружаем вложение в этот момент, мы можем увидеть сообщение как всплывающее

Мы не можем открыть этот файл xxx.pdf, потому что мы обнаружили проблемус его содержанием.

    if (entity.Attributes.Contains("documentbody"))
                {
                    string bytes = entity.Attributes["documentbody"].ToString();
                    tracingService.Trace("CompressImagePlugin: {0}", "crossed try block first line " + bytes.Length);
                    byte[] Uncompressedtext = Convert.FromBase64String(bytes);
    
    
                    if (entity.Attributes.Contains("filename") && entity.Attributes["filename"] != null
                                                               && (entity.Attributes["filename"].ToString()
                                                                   .Contains(".pdf") || entity.Attributes["filename"].ToString()
                                                                      .Contains(".docx")))
                    {
                        tracingService.Trace(entity.Attributes["filename"].ToString());
                        byte[] compress = CompressZip(Uncompressedtext);
                        string compressedData = Convert.ToBase64String(compress);
                        entity.Attributes["documentbody"] = compressedData;
                    }
    }

Спасибо

1 Ответ

0 голосов
/ 13 ноября 2018

Поскольку вы меняете тип файла с PDF на ZIP, вам необходимо обновить имя файла и mimetype вложения. Примерно так:

entity.Attributes["filename"] = entity.Attributes["filename"].ToString().Replace(".pdf", ".zip");
entity.Attributes["mimetype"] = "application/zip";

Теперь, когда пользователь щелкает по вложению, ему следует предложить загрузить ZIP-файл, содержащий файл PDF.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...