/// <summary> /// Метаданные отправляемого /// файла синхронизации /// </summary> /// <returns></returns> public virtual string GetBodyByMetadata() { const string cAttachedFileMask = "File=\"{0}\";"; const string cHashMask = "Checksum=\"{1}\";"; //todo: опредилиться с вычислением контрольной суммы const bool calculateHash = false; //todo: опредилиться с вычислением контрольной суммы var body = Resources.cMetadataHeader + "\r\n"; body += string.Join(";\r\n", Metadata.Select(x => x.Key + "=" + x.Value).ToArray()); body += ";"; body += Resources.cEndMetadata; body += "[attached]\r\n"; //перечисление прикрепленных документов body = Attachments.Aggregate(body, (current, file) => current + (string.Format(calculateHash ? cAttachedFileMask + cHashMask : cAttachedFileMask, file.Name, 0) + "\r\n")); body += "[end_attached]"; return(body); }