トップ回答者
SqlDataSourceを使った複数メール送信について

質問
-
Vwd2005・AccessMDBにてメール送信を複数同時送信(MAX10件)したいのですが
よくわかりません、MailMessageクラスを使用しての送信です
送信グループを予めAccessに設定してDropDownListから選択しての処理(固定ドメイン)
以下のように記述しています、よろしくお願い致します。
’--------- .aspx --------
<asp:DropDownList ID="DropDownList1" runat="server" AppendDataBoundItems="True"
AutoPostBack="True" DataSourceID="SqlDataSource1" DataTextField="処理名称" DataValueField="CD">
<asp:ListItem Selected="True" Value="0">選択</asp:ListItem>
</asp:DropDownList> <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString1 %>"
ProviderName="<%$ ConnectionStrings:ConnectionString1.ProviderName %>" SelectCommand="SELECT MailID, CD, Name FROM SendMailF WHERE (CD = ?)">
<SelectParameters>
<asp:ControlParameter ControlID="DropDownList1" Name="CD" PropertyName="SelectedValue"
Type="Int32" />
</SelectParameters>
</asp:SqlDataSource>’--------- .aspx.VB --------
dim sMailID as string
dim sNM as string
arguments = New DataSourceSelectArguments()
dtView = Me.SqlDataSource1.Select(arguments)
'メールアドレスを取得
ix = 1
'MailMessageの作成
Dim msg As New System.Net.Mail.MailMessage()
msg.From = New System.Net.Mail.MailAddress("xxx@xxxxxx.co.jp", "本人")For Each dtRowView In dtView
If ix > 10 Then Exit For
sMailID = CType(dtRowView("MailD"), String) & "@xxxxx.co.jp"
sNM = CType(dtRowView("Name"), String)
msg.To.Add(New System.Net.Mail.MailAddress(Trim(sMailID), Trim(sNM)))ix = ix + 1
Next'件名
Select Case Me.DropDownList1.SelectedValue
Case 1
msg.Subject = "Groupe1"
Case 2
msg.Subject = "Groupe2"
Case 3
msg.Subject = "Groupe3"
Case Else
msg.Subject = "??"
End Select
'本文
msg.Body = "xxxxxxxxxx:"
Dim sc As New System.Net.Mail.SmtpClient()sc.Host = "SMTPxxxxx.co.jp"
'メッセージを送信する
sc.Send(msg)
- 編集済み pythonk 2012年5月25日 20:48
回答
-
質問文が見当たりません。何を求めているのですか?
ASP.NET、SqlDataSource、メール送信、いろいろな話題が含まれていますがその中のどの部分を知りたいのですか? 逆に言えば分っている部分は質問に含める必要はないはずです。つまり、質問者さん自身が知りたい部分を明確にできていないから、質問文の含まれない質問が投稿されてしまうのでしょう。
-
佐祐理さん
大変しつれいしました。
実は先日より以下のmsg.To.Add行でランタイムエラーが起きていまして
webconfigのcustomErrorsを変更してエラー内容を調べていたのですが
わからず投稿させていただきましたが、佐祐理さんに本日再度テストを
行いましたら動作しました。大変申し訳ありませんでした。
ただ、ローカルではまったく動作しませんが、これはクライアント環境かと思い
あきらめます。
失礼致します。
For Each dtRowView In dtView
If ix > 10 Then Exit For
sMailID = CType(dtRowView("MailD"), String) & "@xxxxx.co.jp"
sNM = CType(dtRowView("Name"), String)
msg.To.Add(New System.Net.Mail.MailAddress(Trim(sMailID), Trim(sNM)))ix = ix + 1
Next- 回答としてマーク pythonk 2012年5月26日 0:39
すべての返信
-
質問文が見当たりません。何を求めているのですか?
ASP.NET、SqlDataSource、メール送信、いろいろな話題が含まれていますがその中のどの部分を知りたいのですか? 逆に言えば分っている部分は質問に含める必要はないはずです。つまり、質問者さん自身が知りたい部分を明確にできていないから、質問文の含まれない質問が投稿されてしまうのでしょう。
-
佐祐理さん
大変しつれいしました。
実は先日より以下のmsg.To.Add行でランタイムエラーが起きていまして
webconfigのcustomErrorsを変更してエラー内容を調べていたのですが
わからず投稿させていただきましたが、佐祐理さんに本日再度テストを
行いましたら動作しました。大変申し訳ありませんでした。
ただ、ローカルではまったく動作しませんが、これはクライアント環境かと思い
あきらめます。
失礼致します。
For Each dtRowView In dtView
If ix > 10 Then Exit For
sMailID = CType(dtRowView("MailD"), String) & "@xxxxx.co.jp"
sNM = CType(dtRowView("Name"), String)
msg.To.Add(New System.Net.Mail.MailAddress(Trim(sMailID), Trim(sNM)))ix = ix + 1
Next- 回答としてマーク pythonk 2012年5月26日 0:39