2

複数のクライアントがいて、クライアントが複数の連絡先を持つオンライン システムを作成しています。ここで、クライアントが連絡先にメールを送信できるようにしたいので、連絡先がメールを受信すると、[From:abc@abc.com & ABC company] フィールドに会社名とメール アドレスが表示されます。

MVCMailer を使用してメールを送信していますが、テスト メールを受信すると、クライアントのメール アドレス (TO と NAME) の代わりに、web.config ファイルで構成したメールが表示されます。クライアントの連絡先が自分のメール アドレスではなく自分のメール アドレスを参照できるように、差出人アドレスを変更するにはどうすればよいですか?

==========================

   <system.net>
     <mailSettings>
      <!-- Method#1: Configure smtp server credentials -->
     <smtp from="xyz@xyz.com">
    <network enableSsl="true" host="smtp.xyz.com" port="587" userName="xyz@xyz.com" password="ABC" />
  </smtp>
  <!-- Method#2: Dump emails to a local directory -->
  <!--
  <smtp from="some-email@gmail.com" deliveryMethod="SpecifiedPickupDirectory">
    <network host="localhost" />
    <specifiedPickupDirectory pickupDirectoryLocation="c:\temp\"/>
  </smtp>
  -->
</mailSettings>

=======================================

これは私がC#クラスで使用しているコードです

   var mailMessage = new MailMessage { Subject = eSubject };
        mailMessage.To.Add(Email);
        mailMessage.Bcc.Add("xyz@xyz.com");
        mailMessage.ReplyToList.Add( new MailAddress(From, ContactPerson));
        mailMessage.Sender = new MailAddress("xyz@xyz.com", ContactPerson);

        //mailMessage.To.Add("some-email@example.com");
        //ViewBag.Data = someObject;
        ViewData = new ViewDataDictionary(obj);


        SmtpClient smtp = new SmtpClient("192.168.1.2",25);
        smtp.Credentials = new NetworkCredential("xyz@xyz.com", "test");

        smtp.Send("xyz@xyz.com","xyz@xyz.com","test","test");
        PopulateBody(mailMessage, viewName, null);


        SmtpClient smtp = new SmtpClient("192.168.1.2",25);
        smtp.Credentials = new NetworkCredential("xyz@xyz.com", "test");

        //smtp.Send("xyz@xyz.com","xyz@xyz.com","test","test");
        PopulateBody(mailMessage, viewName, null);

        return mailMessage;

========================

この問題を解決する方法を教えてください。または、mvc c# で可能かどうか教えてください。

リヤサット

4

1 に答える 1

0

あなたのコードを見てください:

mailMessage.Sender = new MailAddress("xyz@xyz.com", ContactPerson);

smtp.Send("xyz@xyz.com","xyz@xyz.com","test","test");

ここのどこでも、送信者は「xyz@xyz.com」であるとMvcMailerに伝えたと思います。ここでは、クライアントのメールアドレスと名前に変更する必要があると思います。
ところで、「smtp.Send」のコメントを確認してください。すべてのパラメータの意味を知っていることを確認してください。

于 2012-07-18T01:29:46.390 に答える