public static CSOMOperation LoadList(this CSOMOperation operation, string name, Action <ClientContext, Microsoft.SharePoint.Client.List> listLoader = null) { operation.LogDebug($"Loading list {name}"); var web = operation.DecideWeb(); var list = web.Lists.GetByTitle(name); operation.LoadListRequired(list); if (listLoader != null) { listLoader(operation.Context, list); } else { operation.Context.Load(list); } operation.SetLevel(OperationLevels.List, list); operation.ActionQueue.Enqueue(new DeferredAction { ClientObject = operation.LastList, Action = DeferredActions.Load }); return(operation); }