我正在使用 C# MVC 架構。
關于我實作的功能的簡要介紹。
招聘人員可以通過登錄他們的帳戶發布招聘廣告。一旦發布了職位,該特定職位將列在待確認的下方。管理員可以從管理面板查看待確認的招聘廣告。他們可以查看并接受它或拒絕它或編輯并接受它。因此,當管理員接受招聘廣告時,該特定招聘廣告將在網站上發布。并且還將向該特定招聘人員發送一封電子郵件,表明他們的職位空缺已在網站連同鏈接。
因此,當招聘人員發布招聘廣告時,他們可以包含基本的職位詳細資訊,并且還有一個功能,他們可以添加篩選問題供申請人在提交簡歷時回答。因此,當管理員正在檢查待確認的招聘廣告時,他們查看這些篩選問題,有時他們會編輯一些問題并接受廣告。
問題
除了管理員接受招聘廣告時發送的電子郵件外,我還想添加篩選問題串列。
我將從資料庫中檢索問題并在電子郵件內容中顯示為問題串列。
以下是電子郵件模板的方法。
public bool SendJobAcceptanceToRecruiter(string recruiterName, string recruiterEmail, string jobTitle,string joblink, string mailBody, string organization, List<JobQuestion> ques)
{
string subject = "Job Advert Accepted - " jobTitle "-" organization;
var generaltemplate = GetEmailTemplate("GENERAL EMAIL TEMPLATE");
var template = "<br/>Hello " organization "<br/>"
"<br/>Your Job Advert has now been accepted.<br/>"
"<br/>View Job Posted: " joblink "<br/>"
"<br/>Questions Posted: " ques "<br/>"
"<br/>Please contact us if you need more information.<br/>";
var body = generaltemplate.Replace("@Content", template);
body = body.Replace("@Orgname", organization);
body = body.Replace("@JobLink", joblink) GetEmailFooter();
var result = _emailProvider.SendEmail(recruiterEmail, subject, body, true);
return result;
}
這里的問題串列,我得到的問題如下。


我想將第二張圖片中的“問題”顯示為問題串列(在上述情況下,計數為 7,想要顯示 7 個問題),編號從 1 開始。(問題數量可能因廣告而異.) 作為電子郵件內容中的串列。
電子郵件中顯示所有其他詳細資訊(jobTitle、JobLink、RecruiterEmail 等)。只有“問題已發布:”下的“問題”在電子郵件內容中顯示為

我希望內容顯示為,
1.問題1
2.問題3
3.問題3...
我該如何解決這個問題?
uj5u.com熱心網友回復:
您需要“展開”問題串列,如果這樣做,您將擁有所需的所有自由。
代替:
"<br/>Questions Posted: " ques "<br/>"
使用這樣的東西:
"<br/>Questions Posted: " string.Join(", ",Enumerable.Range(0, ques.Count()).Select(n => n.Description).ToArray()) "<br/>"
或者為了更好的可讀性:
var template = "<br/>Hello " organization "<br/>"
"<br/>Your Job Advert has now been accepted.<br/>"
"<br/>View Job Posted: " joblink "<br/>"
"<br/>Questions Posted: ";
foreach(var question in ques)
template = $"somthing {question.Description} something"
template = "<br/>Please contact us if you need more information.<br/>";
var body = generaltemplate.Replace("@Content", template);
進一步優化:使用StringBuilder:
var sb = new StringBuilder();
sb.AppendLine("<br/>Hello " organization "<br/>");
sb.AppendLine("<br/>Your Job Advert has now been accepted.<br/>");
sb.AppendLine("<br/>View Job Posted: " joblink "<br/>");
sb.AppendLine("<br/>Questions Posted: ");
foreach(var question in ques)
{
sb.AppendLine($"somthing {question.Description} something");
}
sb.AppendLine("<br/>Please contact us if you need more information.<br/>");
var body = generaltemplate.Replace("@Content", sb.ToString());
加法:對于編號,您有多種選擇。這里有一個簡單的理解:
var sb = new StringBuilder();
sb.AppendLine("<br/>Hello " organization "<br/>");
sb.AppendLine("<br/>Your Job Advert has now been accepted.<br/>");
sb.AppendLine("<br/>View Job Posted: " joblink "<br/>");
sb.AppendLine("<br/>Questions Posted: ");
int number = 0;
foreach(var question in ques)
{
sb.AppendLine($"QUESTION { number}");
sb.AppendLine($"somthing {question.Description} something");
}
sb.AppendLine("<br/>Please contact us if you need more information.<br/>");
var body = generaltemplate.Replace("@Content", sb.ToString());
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/430018.html
標籤:C# asp.net-mvc 列表 电子邮件
