在创建消息的mvc4应用程序中,我想要一种处理电子邮件正文的好方法,具体取决于状态和其他参数。
我有一条模特信息。将模型保存在控制器中后,我会调用构建电子邮件的SendEmail(MessageModel message)
函数,具体取决于电子邮件的SubbmittedBy
和Status
。
SendEmail(MessageModel message){
MailMessage msg = new MailMessage();
msg.From = new MailAddress("me@me.com", "you");
switch (MessageStatus)
{
case CASE_1 :
if(SubbmittedBy == ...)
string bod = "";
bod.Append(message.Name);
bod.Append(message.Date);
bod.Append(message.Attribute2)
msg.Subject = bod.Append(message.ID);
msg.Body = "way #2" ;
...
else
msg.Subject = "way #5";
msg.Body = "way #6" ;
...
break;
case status2 :
if(SubbmittedBy == ...)
msg.Subject = "way #3";
msg.Body = "way #4" ;
...
else
...
break;
case status3 :
if(SubbmittedBy == ...)
...
else
...
break;
case status4 :
if(SubbmittedBy == ...)
...
else
...
break;
case status5 :
if(SubbmittedBy == ...)
...
else
...
break;
}
msg.IsBodyHtml = isBodyHtml;
sc.Send(msg);
}
使用设计模式有没有办法让它变得更简单,更容易阅读?我的电子邮件附加内容为每行if(...)
100行。我喜欢1000行代码,但这些代码无法读取。