2012-01-31 12 views
0

私は電子メールを送信するasp.netアプリを作成しています。署名に会社のロゴを付ける必要があります。私の画像は画像はasp.net電子メールの署名で表示されません

enter image description hereと表示されます。

私のコードは次のとおりです。私は、「ロゴ」の上に置くと

LinkedResource logo = new LinkedResource(
          "c:\\Data\\Misc\\Images\\CorpLogo.jpg", "image/jpeg"); 
logo.ContentId = "corpLogo"; 
logo.TransferEncoding = TransferEncoding.Base64; 

AlternateView av1 = AlternateView.CreateAlternateViewFromString("<html><body>" + msgBody + "<br><img src=cid:corpLogo/><br></body></html>", null, MediaTypeNames.Text.Html); 
av1.LinkedResources.Add(logo); 
message.AlternateViews.Add(av1); 

message.Body = msgBody; 

は、私が「contentlink」の値がnullで見ることができます。
画像が表示されないのはなぜですか?

+1

イメージはあなたのローカルマシンのイメージを参照しているように見えるので、あなたのマシンから離れた場所には表示されません。アクセス可能なようにパブリックな場所にホストする必要があります。電子メールのHTMLを見ても、あなたの質問に答えるのに役立ちます。 – gdp

+1

私のローカルマシンへの参照はテストのためのものです。一度これが生産されると変更されます – user1111955

+0

電子メールのHTMLを見て...またはあなたは画像を添付しようとしていますか? – gdp

答えて

2

更新

あなたはまだリンクされたリソースの行にブレークを入れて、画像のパスを確認し、それをソートしていない場合は、Server.MapPathの


チェックを使用する必要がありますここでは、これがあなたがやろうとしていることだと思います。ここで

http://log.itto.be/?p=486

完全な例です。コードを最小限に単純化して、機能させるようにしてください。

http://www.systemnetmail.com/faq/2.6.aspx

+0

server.mappthが動作していない – user1111955

+0

デバッグ時にリンクされたリソースオブジェクトの上にカーソルを置いてパスが正しいことを確認しましたか? – gdp

+0

LinkedResourceオブジェクトにカーソルを置くとパスがありません。 – user1111955

0

Attatch画像メールに、その後、あなたはすべてのクライアント上だけでなく、Cお使いのPC上でそれを表示することができます:\何かがそれを持っています。

関連する問題