Domanda

Sono un principiante di SharePoint 2010.

Vorrei inviare un'email quando un utente fare clic su un pulsante personalizzato specificato rispetto a un elemento in un elenco.

Vorrei aggiungere nel corpo dell'email Alcune informazioni sull'elemento selezionato come la colonna "Titolo" o "Autore".

Ho trovato questo codice per inviare e-mail e l'ho copiato in una pagina .aspx.Questa pagina riceve anche un parametro da querystring.Il parametro è "list_name" che specifica il nome dell'elenco in cui si fa clic sul pulsante.Penso che questo potrebbe essere usato per specificare il frammento SP da qualche parte nel codice, ma non so esattamente dove e come farlo.

StringDictionary headers = new StringDictionary();
string bodyTxt = "<b>Test Mail Bold</b>"; //for html mail body, you can send unformatted text too…

headers.Add("to", "mailadressfor_cc@domainname.com");
headers.Add("from", "mailadress_from@domainname.com");
headers.Add("subject", "Richiesta scambio prenotazione");
headers.Add("content-type", "text/html"); //for html mail body

SPUtility.SendEmail(properties.web, headers, bodyTxt);
.

Ma la mia domanda (probabilmente stupida) è: come posso recuperare i dati dall'elenco e utilizzarlo in questa pagina .aspx che invia l'e-mail?

Grazie!

È stato utile?

Soluzione

Since you have the list name in the query string use it to get SPList as below

SPWeb web = SPContext.Current.Web;
SPList list = web.GetListFromUrl(web.Url + “/Lists/ListName/Forms/AllItems.aspx“);

Then you can get properties from list.

Example:

String listTitle = list.Title;

If you want to get properties from a list item, you can pass item’s ID in the query string too, and get the item as below:

SPListItem item = list.GetItemByID(id);
String itemTitle = item.Title;
String itemFieldValue = item[“fieldname”] == null ? null : item[“fieldname”].ToString();
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a sharepoint.stackexchange
scroll top