Добавить LinkedResource из Properties.Resources в C#
Добавление изображения JPEG в почтовое сообщение с помощью
LinkedResource resPic = new LinkedResource(@"path\Pic.jpg", MediaTypeNames.Image.Jpeg);
работает хорошо, но мне нужно добавить картинку из проекта Properties.Resources.Pic.
Как это можно сделать?
1 ответ
Решение
Один из подходов - сначала сохранить его на диск:
var fileName = Guid.NewGuid.ToString();
var path = Path.Combine(
Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)),
fileName);
File.WriteAllBytes(path, Properties.Resources.Pic);
LinkedResource resPic = new LinkedResource(path, MediaTypeNames.Image.Jpeg);
и затем, когда вы закончите со всем процессом, очистите файл:
File.Delete(path);
Я не гарантирую, что вы сможете очистить файл тем же способом, поэтому path
может потребоваться более доступная переменная, но вы можете проработать эти детали.