/// このインスタンスの値を元に、SmtpContentクラスのインスタンスを生成します。 /// <summary> /// Create SmtpContent instance with this instance value. /// このインスタンスの値を元に、SmtpContentクラスのインスタンスを生成します。 /// </summary> /// <returns></returns> public Smtp.SmtpContent CreateSmtpContent() { Smtp.SmtpContent ct = new HigLabo.Net.Smtp.SmtpContent(); Field f = null; for (int i = 0; i < this.Header.Count; i++) { f = this.Header[i]; if (String.IsNullOrEmpty(f.Value) == true) { continue; } ct[f.Key] = MailParser.DecodeFromMailHeaderLine(f.Value); } for (int i = 0; i < this.ContentType.Fields.Count; i++) { f = this.ContentType.Fields[i]; ct.ContentType.Fields.Add(new Field(f.Key, MailParser.DecodeFromMailHeaderLine(f.Value))); } for (int i = 0; i < this.ContentDisposition.Fields.Count; i++) { f = this.ContentDisposition.Fields[i]; ct.ContentDisposition.Fields.Add(new Field(f.Key, MailParser.DecodeFromMailHeaderLine(f.Value))); } ct.LoadText(this.BodyText); for (int i = 0; i < this.Contents.Count; i++) { ct.Contents.Add(this.Contents[i].CreateSmtpContent()); } return(ct); }
/// <summary> /// /// </summary> /// <param name="key"></param> /// <returns></returns> public String this[String key] { get { Field f = InternetTextMessage.Field.FindField(this._Header, key); if (f == null) { return(""); } else { if (this._DecodeHeaderText == true) { return(MailParser.DecodeFromMailHeaderLine(f.Value)); } else { return(f.Value); } } } set { Field f = InternetTextMessage.Field.FindField(this._Header, key); if (f == null) { f = new Field(key, value); this._Header.Add(f); } else { f.Value = value; } } }
public Smtp.SmtpMessage CreateSmtpMessage() { Smtp.SmtpMessage mg = new Clover.Net.Smtp.SmtpMessage(); Field f = null; mg.To.AddRange(MailAddress.CreateMailAddressList(this.To)); mg.Cc.AddRange(MailAddress.CreateMailAddressList(this.Cc)); for (int i = 0; i < this.Header.Count; i++) { f = this.Header[i]; if (String.IsNullOrEmpty(f.Value) == true) { continue; } if (f.Key.ToLower() == "to" || f.Key.ToLower() == "cc") { continue; } mg[f.Key] = MailParser.DecodeFromMailHeaderLine(f.Value); } for (int i = 0; i < this.ContentType.Fields.Count; i++) { f = this.ContentType.Fields[i]; mg.ContentType.Fields.Add(new Field(f.Key, MailParser.DecodeFromMailHeaderLine(f.Value))); } for (int i = 0; i < this.ContentDisposition.Fields.Count; i++) { f = this.ContentDisposition.Fields[i]; mg.ContentDisposition.Fields.Add(new Field(f.Key, MailParser.DecodeFromMailHeaderLine(f.Value))); } mg.BodyText = this.BodyText; for (int i = 0; i < this.Contents.Count; i++) { mg.Contents.Add(this.Contents[i].CreateSmtpContent()); } return(mg); }