---
title: "Skicka mejl med inbäddad bild"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/184736-skicka-mejl-med-inbäddad-bild"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "doggelito"
published: "2010-09-28T11:36:44.000Z"
updated: "2010-09-28T18:44:48.000Z"
replies: 1
views: 563
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/184736-skicka-mejl-med-inbäddad-bild"
---

# Skicka mejl med inbäddad bild

## #1 — doggelito, 2010-09-28T11:36Z

Hej, 
nån som ser nått direkt fel med denna kod?

```
public void SendArticle(string subject, string imagePath, string imageContentType, string from, string to)
        {
            MailMessage message = new MailMessage();
            message.From = new MailAddress(from);
            message.To.Add(to);
            message.Subject = subject;

            if (!string.IsNullOrEmpty(imagePath))
            {
                WebClient webClient = new WebClient();
                Stream imgStream = webClient.OpenRead("http://www.blablabla.se/minbild.jpg");

                if (imgStream != null)
                {
                    LinkedResource logo = new LinkedResource(imgStream);
                    logo.TransferEncoding = TransferEncoding.Base64;
                    logo.ContentId = "attachedImage";
                    logo.ContentType = new ContentType("text/jpg");
                    AlternateView av1 = AlternateView.CreateAlternateViewFromString("<html><head></head><body><img src=\"cid:attachedImage\"></body></html>", null, "text/html");
                    av1.LinkedResources.Add(logo);

                    message.AlternateViews.Add(av1);
                }

                imgStream.Close();
                webClient.Dispose();
            }

            message.IsBodyHtml = true;

            SmtpClient smtp = new SmtpClient();
            smtp.Send(message);
        }
```

Nu får jag bara:

```

[WebException: The request was aborted: The connection was closed unexpectedly.]
   System.Net.ConnectStream.Read(Byte[] buffer, Int32 offset, Int32 size) +6018788
   System.Net.Mime.MimePart.Send(BaseWriter writer) +122
   System.Net.Mime.MimeMultiPart.Send(BaseWriter writer) +283
   System.Net.Mail.Message.Send(BaseWriter writer, Boolean sendEnvelope) +111
   System.Net.Mail.SmtpClient.Send(MailMessage message) +1259

[SmtpException: Failure sending mail.]
   System.Net.Mail.SmtpClient.Send(MailMessage message) +1811
```

Kommenterar jag bort *if (imgStream != null)...* så går mejlet iväg, så mejlet i sig fungerar. Men inte med bild!  :(

Permalänk: https://www.webforum.nu/p/184736

## #2 — doggelito, 2010-09-28T18:44Z

Hmm, problemet låg i att jag körde: *imgStream.Close();*
Struntar jag i att stänga streamen så fungerar det.

Nån vänlig själ som kan förklara det, varför jag inte får köra *Close()*?

Permalänk: https://www.webforum.nu/p/2255548

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/184736-skicka-mejl-med-inbäddad-bild
