Prévenir Gmail à partir de la création de liens pour les Url et les adresses e-mail
Problème est Gmail crée automatiquement des liens hypertexte pour tous les Url des sites web et adresses e-mail. Je ne veux pas créer un lien.
var mailClient = new SmtpClient();
var netMail = new MailMessage();
msg = "I do not want www.google.com as a link at recipient end. <br/>";
msg += "I want my email addrress [email protected] as html without a link";
var cr = new NetworkCredential("########", "###########");
netMail.From = new MailAddress("########@m####.###", "######");
netMail.To.Add(new MailAddress("[email protected]"));
netMail.Subject = "Test Mail";
netMail.IsBodyHtml = true;
netMail.Body = msg;
mailClient.Host = "xyz.com";
mailClient.Port = 25;
mailClient.EnableSsl = false;
mailClient.Credentials = cr;
mailClient.Send(netMail);
Toute solution?
Vous devez vous connecter pour publier un commentaire.
Il n'y a aucun moyen d'arrêter de créer des Url, parce que son automatiquement vérifiées par le fournisseur d'email que si le texte est une URL valide.
Seule façon de surmonter ce problème est, trompant l'analyseur. Juste de mettre des espaces, des balises HTML, que ce soit dans une telle manière que l'analyseur ne peut pas identifier l'adresse etc.
Voici quelques exemples de code:
Et le résultat est le suivant:
J'ai été en mesure de contourner ce problème en ajoutant simplement des
<a style="color: #000000">link text</a>
(notez qu'il n'est pashref
).Je n'ai pas essayé à l'aide d'attributs en plus de
style
mais j'imagine que vous pourriez. Le système de messagerie que j'utilise ("Blackbaud" NetCommunity) bande une plaine<a>
marque, de sorte que j'ai dû avoir au moins un attribut.J'ai eu le même problème et trouvé si vous utilisez le courriel de ce genre;
fournisseurs de services de messagerie n'a pas tendance à suivre l'email comme un lien.
Espère que cette aide.
De prendre un repère de perilbrain réponse, j'ai mis en application les regex que j'utilise pour cela:
Notez que cette fonction remplace globalement sur tout ce qui est passé dans l'-il serait peut-être trop agressif pour les blocs de texte naturel comme dans le cas des OP exemple, mais souvent, les modèles sont paramétrés et cela fonctionne très bien quand vous pouvez simplement passer une url ou e-mail (j'ai effectivement mis en œuvre comme un modèle de fonction d'assistance, de sorte que c'est exactement ce que fait).
La fonction convertit les entrées suivantes:
dans cette:
Noter que j'ai essayé un faux balise courte comme
<x>
comme indiqué dans la accepté de répondre et a constaté que GMail "intelligemment" l'a remplacé par<u>
balises, ce qui je suppose est une fonction, mais n'était pas souhaitable. Dans mes tests,<span>
tags empêcher la liaison avec pas de visual effets secondaires.Cloué!
Cela n'empêche pas les e-mails d'être transformées en liens, mais il vous permet de définir la couleur de la police et de supprimer le soulignement du lien.
Il fonctionne dans tous les clients de messagerie, j'ai testé sur litmus.com - y compris Outlook 2010, 2013, 2016 (sur Windows), Outlook.com, iPhone 6, l'iPad, l'interface web gmail et Apple Mail, 8, 9
Variante 1:
Un lien qui ne réagit pas quand on clique sur
Variante 2:
Un mailto-link. Travaille dans presque tous les clients. Outlook.com cependant le style en bleu et souligné.
J'ai un bon de rappeler solution pour les textes d'e-mails: Utilisez les mêmes caractères unicode. Par exemple un point de chef de file (U+2024) au lieu de dot. Comparer, comment ressemble Běhej.com et Běhej․com (le premier est régulièrement dot).
Pour l'instant un emballage simple par
<span>
n'est pas de travail, je suggère de remplacer@
par son format html entité alternativeAussi, si votre e-mail contient des numéros de téléphone vous pouvez échapper en
disable_tel_link
fonction:Aucune des solutions présentées ici semblent plus fonctionner. J'ai expérimenté un peu avec l'idée de la non-imprimable des caractères Unicode et trouvé cette séquence de travail:
Où est le ZÉRO de la LARGEUR de NON-MENUISIER caractère.
Même si c'est un vieux thread, je veux aider les personnes qui pourraient arriver ici. J'ai trouvé que l'ajout d'un span à l'intérieur le lien permet à google de ne pas voir un lien voir ci-dessous:
J'ai eu un dot com dans le titre de mon message de confirmation.
Inspiré par @perilbrain, j'ai tourné mon problème, comme cela
php
simple !
Supposons que votre url à afficher "abcdUrl.com"
Pour éviter gmail de s'afficher en tant que lien, de l'envelopper dans une balise d'ancrage
<a href="" style="text-decoration:none;color:#333;">
abcdUrl.com
</a>
Cela fonctionne bien dans gmail.
j'ai eu le même problème donc, après quelques minutes d'avoir trouvé comment le résoudre.
le truc c'est que si vous ciblez l'élément directement, ça ne marchera pas parce que gmail va automatiquement ajouter aa "une" étiquette là-bas, alors vous devez aller un peu plus loin et déclarer une classe pour qui "un" tag. dans mon cas, le mail était dans un" tag que j'ai trouvé c'est plus facile de travailler avec. donc, ce que j'ai fait était de créer une classe comme ceci:
il n'y a pas "un" tag dans mon code mais depuis gmail ajoutera automatiquement puis vous devez l'attraper là. maintenant, vous avez juste l'utilisation de cette classe où jamais de mettre votre e-mail ajouter comme "span" ou "div" et boum! fixe.