У меня есть веб-приложение для отправки писем подписчикам.Теперь у меня возникли проблемы с доступом к файлам изображений из папки моего веб-приложения.вот мой код:
string fbody = plainText.Replace("\"", "'");
if (fbody.Contains("src='cid:"))
{
var htmlView = AlternateView.CreateAlternateViewFromString(msg.Body, null, "text/html");
do
{
int src = fbody.IndexOf("src='cid:");
if (src != -1)
{
fbody = fbody.Remove(0, src + 9);
var dot = Regex.Match(fbody, @"\.(jpg|jpeg|gif|png)");
if (dot.Success)
{
int comma = fbody.IndexOf("'");
if (comma != -1)
{
if (!string.IsNullOrEmpty(fbody.Substring(0, comma)))
{
string imageSource = Path.Combine(HttpRuntime.AppDomainAppPath, "EmailFiles/" + fbody.Substring(0, comma)); // here I got image file
var leftImageLink = (dynamic)null;
switch (Path.GetExtension(imageSource).ToLower())
{
case ".jpg":
leftImageLink = new LinkedResource(imageSource, "image/jpg") // here error thrown could not access file
{
ContentId = fbody.Substring(0, comma),
TransferEncoding = System.Net.Mime.TransferEncoding.Base64
};
break;
case ".jpeg":
leftImageLink = new LinkedResource(imageSource, "image/jpeg")
{
ContentId = fbody.Substring(0, comma),
TransferEncoding = System.Net.Mime.TransferEncoding.Base64
};
break;
case ".gif":
leftImageLink = new LinkedResource(imageSource, "image/gif")
{
ContentId = fbody.Substring(0, comma),
TransferEncoding = System.Net.Mime.TransferEncoding.Base64
};
break;
case ".png":
leftImageLink = new LinkedResource(imageSource, "image/png")
{
ContentId = fbody.Substring(0, comma),
TransferEncoding = System.Net.Mime.TransferEncoding.Base64
};
break;
}
htmlView.LinkedResources.Add(leftImageLink);
}
}
}
}
}
while (fbody.Contains("src='cid:"));
msg.AlternateViews.Add(htmlView);
что здесь не так.Я получил файл в imagesource, но не оставил ImageLink.что здесь не так ???