本文整理汇总了C#中N2.Resolve方法的典型用法代码示例。如果您正苦于以下问题:C# N2.Resolve方法的具体用法?C# N2.Resolve怎么用?C# N2.Resolve使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类N2
的用法示例。
在下文中一共展示了N2.Resolve方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ReplaceContent
private void ReplaceContent(N2.Engine.IEngine factory)
{
var installer = factory.Resolve<N2.Edit.Installation.InstallationManager>();
installer.Install();
var root = installer.InsertExportFile(File.OpenRead(HttpContext.Current.Server.MapPath("~/App_Data/Demo.n2.xml.gz")), "Concrete_SampleData.gz");
if (root.ID != factory.Host.DefaultSite.RootItemID)
factory.Host.DefaultSite.RootItemID = root.ID;
foreach (ContentItem item in root.Children)
{
if (item.ID == factory.Host.DefaultSite.StartPageID && item is StartPage)
{
CreateDemoPanel(factory, item);
return;
}
}
foreach (ContentItem item in root.Children)
{
if (item is StartPage)
{
CreateDemoPanel(factory, item);
factory.Host.DefaultSite.StartPageID = item.ID;
return;
}
}
}
示例2: CreateDemoPanel
private static void CreateDemoPanel(N2.Engine.IEngine factory, ContentItem item)
{
if (ConfigurationManager.AppSettings["Demo.CreateDemoPanel"] == "true")
{
var part = factory.Resolve<ContentActivator>().CreateInstance<Models.DemoPart>(item);
part.ZoneName = "Right";
part.SortOrder = -1000000;
item.Children.Insert(0, part);
factory.Persister.Save(part);
}
}
示例3: ReplaceContent
private void ReplaceContent(N2.Engine.IEngine engine)
{
Importer imp = engine.Resolve<Importer>();
IImportRecord record;
HttpContext context = HttpContext.Current;
if (context != null && File.Exists(context.Server.MapPath("~/App_Data/export.n2.xml.gz")))
{
record = imp.Read(context.Server.MapPath("~/App_Data/export.n2.xml.gz"));
}
else
{
record = imp.Read(GetType().Assembly.GetManifestResourceStream("Demo.Resources.export.n2.xml.gz"), "export.n2.xml.gz");
}
ContentItem imported = record.RootItem;
ContentItem rootPage = engine.Persister.Get<ContentItem>(engine.Host.DefaultSite.RootItemID);
engine.SecurityManager.ScopeEnabled = false;
try
{
((N2.Integrity.IntegrityEnforcer)engine.Resolve<N2.Integrity.IIntegrityEnforcer>()).Enabled = false;
RemoveExistingPages(engine, rootPage);
}
finally
{
((N2.Integrity.IntegrityEnforcer)engine.Resolve<N2.Integrity.IIntegrityEnforcer>()).Enabled = true;
}
UpdateRootPage(engine, imported, rootPage);
imp.Import(record, rootPage, ImportOption.Children);
foreach(ContentItem item in rootPage.Children)
if (item is StartPage)
engine.Host.DefaultSite.StartPageID = item.ID;
engine.Persister.Save(rootPage);
//foreach (NewsList nl in Find.Items.Where.Type.Eq(typeof(NewsList)).Select())
//{
// foreach (NewsContainer nc in Find.Items.Where.Type.Eq(typeof (NewsContainer)).Select())
// {
// nl.Container = nc;
// News n = engine.Definitions.CreateInstance<News>(nc);
// n.Title = "Demo site created";
// n.Introduction = "Today at " + DateTime.Now + " a demo site was generated for your convenience.";
// n.Text = "<p>Download the template web if you like.</p>";
// n["Syndicate"] = true;
// engine.Persister.Save(n);
// }
//}
//foreach (CalendarTeaser ct in Find.Items.Where.Type.Eq(typeof(CalendarTeaser)).Select())
//{
// foreach (Calendar c in Find.Items.Where.Type.Eq(typeof(Calendar)).Select())
// {
// ct.Container = c;
// Event e = engine.Definitions.CreateInstance<Event>(c);
// e.Title = "Demo site scheduled for deletion";
// e.Introduction = "30 minutes from now the demo site will be re-created.";
// e.EventDate = DateTime.Now.AddMinutes(30);
// e["Syndicate"] = true;
// engine.Persister.Save(e);
// }
//}
ClearPreviousVersions(engine, rootPage);
engine.SecurityManager.ScopeEnabled = true;
}
示例4: ClearPreviousVersions
private static void ClearPreviousVersions(N2.Engine.IEngine engine, ContentItem rootPage)
{
var repo = engine.Resolve<ContentVersionRepository>();
foreach(var version in repo.Repository.Find().ToList())
repo.Repository.Delete(version);
//foreach (ContentItem version in engine.Resolve<N2.Persistence.Finder.IItemFinder>().Where.VersionOf.Eq(rootPage).Select())
// engine.Persister.Delete(version);
}
示例5: ClearPreviousVersions
private static void ClearPreviousVersions(N2.Engine.IEngine factory, ContentItem rootPage)
{
foreach (ContentItem version in factory.Resolve<N2.Persistence.Finder.IItemFinder>().Where.VersionOf.Eq(rootPage).Select())
factory.Persister.Delete(version);
}