2

送信するメールのリストを取得するプロジェクトに取り組んでいます。メールに必要なアイテムを作成するためのコードが別のクラスにあります。

public class EmailStructure
{
    public MailMessage Email { get; set; }
    public int MailId { get; set; }
    public int MailTypeId { get; set; }
}

データを返し、データセット内の各レコードをループして新しいものを作成するコードがありますMailMessage。問題は、リストにを追加しようとするとMailMessage、次のようなエラーが発生することです。

引数タイプSystem.New.Mail.MailMessageは、パラメータータイプ'EmailStructure'に割り当てることができません。

明らかに私はここで何か間違ったことをしていますが、問題が何であるかを理解することはできません。私のコードは以下の通りです:

class SendMails
{
    public List<EmailStructure> emailMessages = new List<EmailStructure>();
    public List<GetOutboundEmailsResult> emailResults = new List<GetOutboundEmailsResult>();

    public Extract()
    {
        // get data from DB
    }

    public void Transform()
    {
        if(emailResults.Any())
        {
            foreach (GetOutboundEmailsResult item in emailResults)
            {
                var emailBody = GetEmailBody(item);

                // create email this returns the type as MailMessage
                var email = emailHandler.ComposeNewEmail(
                    System.Configuration.ConfigurationManager.AppSettings["Mailbox"],
                    item.MailboxFrom,
                    string.Empty,
                    string.Empty,
                    emailBody.ToString(),
                    true,
                    "test");

                // add email message to List<MailMessage>
                // need to add MailMessage, MailId, MailTypeId 
                emailMessages.Add(email); // error is appearing here
            }
        }
    }

    public Route()
    {
        // send the emailMessages
        foreach(var row in emailMessages)
        {
            // need to use the MailId, MailTypeId here from the list
            emailHandler.SendNewEmail(row.Email)
        }
    }
}

MailMessage、Maild、M​​ailTypeIdをリストに追加するにはどうすればよいですか?プロセスの後半でメソッドでメールを送信できるように、これらすべてのアイテムが必要です。

4

2 に答える 2

4

後者がsを保持している場合、にMailMessage直接追加しようとしています。次のようなものを試してください:emailMessagesEmailStructure

emailMessages.Add(new EmailStructure()
{
    Email = email,
    MailId = 42,
    MailTypeId = 108
});

適切な数で。

于 2012-07-30T17:38:16.723 に答える
0

MailMessageタイプのオブジェクトをタイプのリストに追加しようとしていますList<EmailStructure>。それが問題です。

于 2012-07-30T17:38:41.587 に答える