Recipients プロパティ (String データ型) を持つ Report オブジェクトがあります。Recipients プロパティは、すべての受信者の電子メール アドレスを に保持しますcomma separated string
。コンマ区切りの文字列からメール オブジェクトの「<strong>コレクション」を作成する必要があります。 最初にメールアドレスを取得するために文字列のリストを使用する次のコードがあります。次に、電子メール オブジェクトのコレクションを作成します。
を使用して冗長な List と Collection を回避するより良い方法はありLINQ
ますか?
Report report = new Report();
report.Recipients = "test@test.com, demo@demo.com";
List<string> emailAddressList = new List<string>( report.Recipients.Split(',') );
Collection<Email> emailObjectCollection = new Collection<Email>();
foreach (string emailAddress in emailAddressList)
{
Email email = new Email();
email.EmailAddress = emailAddress;
emailObjectCollection.Add(email);
}
参考文献:
- 1 つの辞書を避けるためのより良いコード - 大文字と小文字の区別の問題
- linq を使用してリスト内の重複を削除する
- LINQ を使用して複数のプロパティ間で重複を見つける
- C#: List<T> と Collection<T> の違い (CA1002、ジェネリック リストを公開しないでください)
CA1002 : ジェネリック リストを公開しないでください。System.Collections.Generic.List は、継承ではなくパフォーマンスのために設計されたジェネリック コレクションであるため、仮想メンバーは含まれません。http://msdn.microsoft.com/en-us/library/ms182142(v=vs.80).aspx