protected override void ImportData(XmlNode fieldNode, ImportContext context) { XmlAttribute attachmentAttr = fieldNode.Attributes["attachment"]; BinaryData binaryData = this.GetData() as BinaryData; if (binaryData == null) { binaryData = new BinaryData(); } if (attachmentAttr == null) { binaryData.SetStream(RepositoryTools.GetStreamFromString(fieldNode.InnerXml)); binaryData.FileName = String.Concat(this.Content.ContentHandler.Name, ".", this.Name, ".txt"); } else { string path = context.UnescapeFileName(attachmentAttr.Value); binaryData.FileName = Path.Combine(context.CurrentDirectory, path); // webdav request: we don't have a binary file // next to the content as an attachment, so ignore the value var trans = CompatibilitySupport.GetRequestHeader("Translate"); var webdav = (!string.IsNullOrEmpty(trans) && trans.ToLower().CompareTo("f") == 0); if (!webdav) { var stream = context.GetAttachmentStream(path); if (stream == null) { return; } binaryData.SetStream(stream); } } this.SetData(binaryData); }
private static string GetDevice() => (string)CompatibilitySupport.GetHttpContextItem(ApplicationStorage.DEVICEPARAMNAME);