9
votes

Envoi de courriels dans SharePoint

J'ai besoin de savoir quelle est la meilleure pratique pour envoyer des courriels à partir de My SharePoint WebParts et / ou des fonctionnalités personnalisées.

Devrais-je simplement utiliser les classes .NET normales pour envoyer un email? ou est-ce que leur meilleure façon de le faire grâce à l'intégration avec un serveur Outlook?


0 commentaires

4 Réponses :


16
votes

Un moyen facile consiste à utiliser les utilitaires intégrés, cela utilisera ensuite la configuration de Settings de serveur de messagerie dans l'administrateur central

using Microsoft.SharePoint.Utilities;
SPUtility.SendEmail(SPContext.Current.Web, false, false,
     "toaddress@mail.com", "subject",
     "body");


1 commentaires

Cela utilise l'adresse de l'adresse de l'administrateur CA. Si vous voulez des adresses personnalisées, accédez à des classes normales .NET.



1
votes

Universal Way d'envoyer un courrier électronique dans n'importe quel contexte (où SPWeb non disponible) est lu OutboundMailservices Paramètres utilisés dans Sputilité . Ensuite, créez smtpclient manuellement: xxx


0 commentaires

0
votes

Vous pouvez également utiliser ce code pour identifiant dynamique. Ce code obtient le courrier en fonction de l'utilisateur. J'ai utilisé la requête CAML pour obtenir les données du contenu de l'e-mail dans les listes.

SPUser AssigUser = oWeb.EnsureUser(Assigned_Username);
SPQuery mquery = new SPQuery();
mquery.Query = @"<Where><Eq><FieldRef Name='Email_x0020_Type' />
                    <Value Type='Text'>Review - Ready for Review</Value>
                 </Eq></Where>";
string Emailsub = "";
string Emailbody = "";
SPList mList = oWeb.Lists["Email Content"];
SPListItemCollection itemcollection = mList.GetItems(mquery);
foreach (SPListItem item in itemcollection)
{
    Emailsub = item["Email Subject"].ToString();
    Emailbody = item["Email Content"].ToString();
    SPUtility.SendEmail(oWeb, false, false, AssigUser.Email, Emailsub,
                        Emailbody + "</br>" + oWeb.Url);
    break;
}


2 commentaires

Pouvez-vous expliquer quand ce code est-il utile? Il semble très spécifique et n'ajoute rien à la réponse acceptée. Bien sûr, vous pouvez obtenir des paramètres d'une liste ou de l'utilisateur actuel ... Peut-être que je manque le point ici.


Le contenu de l'e-mail est stocké dans une liste séparée et à l'aide de cette requête CAML Le contenu peut être obtenu et utilisé pour le courrier électronique.



0
votes

Utilisation de la surcharge avec des arguments stressadictimiques ( Source ) xxx


0 commentaires