2016-02-11 3 views
0

Я хочу отправить письмо в xamarin.android.Я могу отправить текст с кодом ниже без изображения, но проблема возникает, когда я пытаюсь отправить изображение в виде логотипа. Я имею в виду, я не могу найти путь к изображению.Путь к изображению в Xamarin.Android

Мой способ передачи почты:

public static void SendMail(List<string> to, List<string> cc, string subject, string body,string mfrom) 
{ 
    string messageHeader = "Android E-Mail Testi"; 
    MailMessage msg = new MailMessage(); 
    msg.From = new MailAddress(mfrom); 
    msg.To.Add(new MailAddress(to[0])); 
    msg.CC.Add(new MailAddress(cc[0])); 

    var inlineLogo = new LinkedResource("Drawable://logo.png");//This path is not working. 
    inlineLogo.ContentId = Guid.NewGuid().ToString(); 

    msg.Body = string.Format(@"<img class=""img-responsive"" src=""cid:{0}"" style=""width:25%; float:left""/> 
           <br/><br/><h3>" + messageHeader + @"</h3>" + body, inlineLogo.ContentId); 

    var view = AlternateView.CreateAlternateViewFromString(msg.Body, null, "text/html"); 
    view.LinkedResources.Add(inlineLogo); 
    msg.AlternateViews.Add(view); 

    msg.IsBodyHtml = true; 
    msg.Subject = subject; 
    msg.SubjectEncoding = Encoding.UTF8; 

    SmtpClient smtpClient = new SmtpClient("xx.xxx.x.xxx"); 
    msg.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure; 
    smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network; 


    List<MemoryStream> mStreams = null; 

    msg.BodyEncoding = Encoding.Unicode; 
    smtpClient.Send(msg); 

    if (mStreams != null) 
     foreach (MemoryStream mStream in mStreams) 
      mStream.Close(); 
} 

Я могу отправить почту с помощью этого кода в отличии asp.net.Only это путь к файлу. Я использовал его, как это, и это работает для веб-разработки:

var inlineLogo = new LinkedResource(HostingEnvironment.MapPath("~/images/logo.png")); 

Какой метод следует использовать для изображений (Logo.png) пути в Xamarin?

var inlineLogo = new LinkedResource(???); 

Я не знаю, реальный path.How я могу достичь пути изображения в вытяжке папке папки ресурсов?

Справочник является:

enter image description here

ответ

2

Может быть, это поможет вам. Я создал ToolbarItem со значком из той же папки Ресурсы/выталкиваемые таким образом:

new ToolbarItem("ToolbarItemName", "iconName.png",() => { //Some action; }) 
Смежные вопросы