public static string SetContent(IDataDictionary data, Func <string> getFilePath) { var filePath = string.Empty; data.TryGetValue <string>("Content", content => { var rawType = data.GetValue <string>("ContentType", null); if (string.IsNullOrEmpty(content) || content.Length < 500) { //调整内容类型为嵌入格式 data.TrySetValue("ContentType", Utility.GetContentType(rawType, true)); return; } //设置内容文件的存储路径 filePath = getFilePath(); //将内容文本写入到文件中 Utility.WriteTextFile(filePath, content); //更新内容文件的存储路径 data.SetValue("Content", filePath); //更新内容类型为非嵌入格式(即外部文件) data.SetValue("ContentType", Utility.GetContentType(rawType, false)); }); return(filePath); }