/// <summary> /// Creates and updates all post types defined by code. /// </summary> private void EnsurePostTypes() { foreach (var type in PostTypes) { var pt = Models.PostTemplate.Get("posttemplate_type=@0", type.GetType().FullName).SingleOrDefault(); Models.Manager.TemplateModels.PostEditModel m = null; // Get or create the page type if (pt != null) { m = Models.Manager.TemplateModels.PostEditModel.GetById(pt.Id); } else { m = new Models.Manager.TemplateModels.PostEditModel(); } // Set all meta data if (m.Template.IsNew) { m.Template.Id = Guid.NewGuid(); } m.Template.Name = type.Name; m.Template.Description = type.Description; m.Template.Preview = new HtmlString(type.Preview); m.Template.Controller = type.Controller; m.Template.ShowController = type.ShowController; m.Template.View = type.View; m.Template.ShowView = type.ShowView; m.Template.Properties.Clear(); m.Template.Properties.AddRange(type.Properties); m.Template.Type = type.GetType().FullName; m.Template.AllowRss = type.AllowRss; // Save Template Data.Database.LoginSys(); m.SaveAll(); Data.Database.Logout(); } }
/// <summary> /// Creates and updates all post types defined by code. /// </summary> private void EnsurePostTypes() { foreach (var type in PostTypes) { var pt = Models.PostTemplate.Get("posttemplate_type=@0", type.GetType().FullName).SingleOrDefault(); Models.Manager.TemplateModels.PostEditModel m = null; // Get or create the page type if (pt != null) m = Models.Manager.TemplateModels.PostEditModel.GetById(pt.Id); else m = new Models.Manager.TemplateModels.PostEditModel(); // Set all meta data if (m.Template.IsNew) m.Template.Id = Guid.NewGuid(); m.Template.Name = type.Name; m.Template.Description = type.Description; m.Template.Preview = new HtmlString(type.Preview); m.Template.Controller = type.Controller; m.Template.ShowController = type.ShowController; m.Template.View = type.View; m.Template.ShowView = type.ShowView; m.Template.Properties.Clear(); m.Template.Properties.AddRange(type.Properties); m.Template.Type = type.GetType().FullName; m.Template.AllowRss = type.AllowRss; // Save Template Data.Database.LoginSys(); m.SaveAll(); Data.Database.Logout(); } }