私のWinFormアプリケーションでC#でコード化された動作があります。私の中c#ウィンドウからのメール送信フォームがトリガーされない
: private void buttonSave_Click(object sender, EventArgs e)
Imは私の関数を呼び出す: functions.sendStatusEmail();
奇妙なことは、私はその後、保存ボタンを押すと、メールの送信がトリガされていない、ということです。しかし、私が私のアプリケーションを閉じると、メールは処理され、送信されます。
私は何かが欠けているか、送信イベントを手動で実行するためにsomアプリケーションイベントを手動で起動する必要がありますか?
事前に
おかげで(私はそれをクリックするだけでtriggerdが、メールが空だったclient.SendAsync(mail,null);
を使用してみました)
- 編集:コードは
private void buttonSave_Click(object sender, EventArgs e)
{
// checks if a ticket is active
if (workingTicketId > 0)
{
// update ticket information
functions.updateTicketInfo(workingTicketId, comboBoxPriority.SelectedIndex,
comboBoxStatus.SelectedIndex, textBoxComment.Text);
// gives feedback
labelFeedback.Text = "Updated";
// updates the active ticket list
populateActiveTicketList();
// marks working ticket row in list
dataGridActiveTicketList.Rows[workingGridIndex].Selected = true;
// checks for change of ticket status
if (comboBoxStatus.SelectedIndex != workingTicketStatus)
{
// checks if contact person exists
if (labelContactPersonValue.Text.ToString() != "")
{
// sends email to contact person
functions.sendStatusEmail(labelContactPersonValue.Text, comboBoxStatus.SelectedIndex, workingTicketId, textBoxDescription.Text);
}
// updates working ticket status
workingTicketStatus = comboBoxStatus.SelectedIndex;
}
}
}
とセンドメール機能をexpamples :
// sends a status email to contact person
// returns noting
public void sendStatusEmail(string email, int newStatus, int ticketId, string ticketText)
{
// defines variables
string emailSubject;
string emailBody;
// some exkluded mailcontent handling
// sends mail
MailMessage mail = new MailMessage("[email protected]",email,emailSubject,emailBody);
SmtpClient client = new SmtpClient(ConfigurationManager.AppSettings["MailSMTP"]);
mail.IsBodyHtml = true;
client.Send(mail);
// dispose
mail.Dispose();
}
ポストはsendStatusEmailのコード() – Hemant
...ともbuttonSave_Click –