Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using Microsoft.SharePoint.Client;
- using Microsoft.SharePoint.Client.Utilities;
- using SendGrid.Helpers.Mail;
- using System;
- using System.Collections.Generic;
- using System.Globalization;
- using System.Linq;
- using System.Net.Mail;
- using System.Runtime.Remoting.Contexts;
- using System.Security;
- using System.Text;
- using System.Threading.Tasks;
- namespace Webtop.StarkGroup.MailReminder
- {
- class Program
- {
- static void Main(string[] args)
- {
- string listName = "Kanban-Styling";
- SecureString securePassword = new SecureString();
- string password = "JegByggerBroer94";
- foreach (char c in password.ToCharArray())
- {
- securePassword.AppendChar(c);
- }
- string siteURL = "https://theateam.sharepoint.com/sites/wizdom365";
- string camlQuery = @"<View><Query>
- <Where>
- <Leq>
- <FieldRef Name='DueDate' />
- <Value IncludeTimeValue='False' Type='DateTime'><Today OffsetDays='3' /></Value>
- </Leq>
- </Where>
- </Query><RowLimit>100</RowLimit></View>";
- ClientContext ctx = new ClientContext(siteURL);
- ctx.Credentials = new SharePointOnlineCredentials("man@theateam.onmicrosoft.com", securePassword);
- List list = ctx.Web.Lists.GetByTitle(listName);
- CamlQuery caml = CamlQuery.CreateAllItemsQuery();
- caml.ViewXml = camlQuery;
- ListItemCollection items = list.GetItems(caml);
- UserCollection users = ctx.Web.SiteUsers;
- ctx.Load(items);
- ctx.Load(users);
- ctx.ExecuteQuery();
- foreach (var item in items)
- {
- FieldUserValue[] userValue = (FieldUserValue[])item["AssignedTo"];
- if (userValue != null)
- {
- foreach (FieldUserValue user in userValue)
- {
- User spUser = users.GetById(user.LookupId);
- ctx.Load(spUser);
- ctx.ExecuteQuery();
- sendMail(spUser.Email, ctx);
- }
- }
- }
- }
- public static void sendMail(string mailAddress, ClientContext ctx)
- {
- EmailProperties email = new EmailProperties();
- email.To = new List<string>() { mailAddress };
- email.Subject = string.Format("Subject");
- email.Body = string.Format("<p>test mail</p>");
- Utility.SendEmail(ctx, email);
- ctx.ExecuteQuery();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement