private SPModelManager <SiteConfigEntry> CreateManager(SPSite site) { SPListAttribute listAttribute = new SPListAttribute(); listAttribute.Url = "Lists/SiteConfig"; listAttribute.Title = "Site Config"; listAttribute.EnableVersioning = SPOption.True; listAttribute.OnQuickLaunch = true; listAttribute.DefaultViewQuery = "<OrderBy><FieldRef Name=\"SiteConfigCategory\" Ascending=\"TRUE\"/><FieldRef Name=\"Title\" Ascending=\"TRUE\"/></OrderBy>"; listAttribute = InitializeListSettings(listAttribute); SPModelDescriptor descriptor = SPModelDescriptor.Resolve(typeof(SiteConfigEntry)); descriptor.Provision(site.RootWeb, SPModelProvisionOptions.Asynchronous, new SPModelListProvisionOptions(listAttribute)).GetListCollection(); return(new SPModelManager <SiteConfigEntry>(site.RootWeb)); }
/// <summary> /// Configure customizations on the SharePoint list definition that stores configuration entries. /// </summary> /// <param name="attribute">List definition.</param> /// <returns>Modified list definition.</returns> protected virtual SPListAttribute InitializeListSettings(SPListAttribute attribute) { return(attribute); }