SenseNet.Portal.Portlets.ContentHandlers.FormItem.CreateEmailBody C# (CSharp) Метод

CreateEmailBody() защищенный Метод

protected CreateEmailBody ( bool isHtml ) : string
isHtml bool
Результат string
        protected virtual string CreateEmailBody(bool isHtml)
        {
            var emailText = "";
            var c = Content.Create(this);
            var first = true;
            Attachments = new List<Attachment>();

            foreach (var f in c.Fields.Select(kvp => kvp.Value).Where(f => f.Name.StartsWith("#")))
            {
                var bf = f as BinaryField;
                if (bf != null)
                {
                    var bd = bf.GetData() as BinaryData;
                    if (bd != null)
                    {
                        try
                        {
                            var fs = bd.GetStream();
                            if (fs != null)
                            {
                                var fn = System.IO.Path.GetFileName(bd.FileName);
                                if (string.IsNullOrEmpty(fn))
                                    fn = string.Format("{0}-{1}", this.Name, f.Name.Replace("#", "-"));

                                Attachments.Add(new Attachment(fs, fn, bd.ContentType));
                            }
                        }
                        catch (Exception ex)
                        {
                            Logger.WriteException(ex);
                        }
                    }

                    continue;
                }

                if (first) 
                    first = false;
                else
                    emailText = isHtml ? string.Concat(emailText, "<br/>") : string.Concat(emailText, "\n\r\n");

                emailText = string.Concat(emailText, f.DisplayName, ": ");
                emailText = f.FieldSetting.Bindings.Aggregate(emailText, (current, b) => string.Concat(current, Convert.ToString(this[b])));
            }
            return emailText;
        }