本文整理汇总了C#中Page.ToJson方法的典型用法代码示例。如果您正苦于以下问题:C# Page.ToJson方法的具体用法?C# Page.ToJson怎么用?C# Page.ToJson使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Page
的用法示例。
在下文中一共展示了Page.ToJson方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ShouldImportAttributes
public void ShouldImportAttributes()
{
var obj = new Page
{
InternalName = "Some Page",
Attributes = new Dictionary<string, Web.Cache.AttributeCache> { { "foobar", null } }
};
var json = obj.ToJson();
var page = Page.FromJson( json );
Assert.IsNotNull( page.Attributes );
Assert.IsNotEmpty( page.Attributes );
Assert.IsNull( page.Attributes.First().Value );
}
示例2: ShouldImportAttributeValues
public void ShouldImportAttributeValues()
{
var obj = new Page
{
InternalName = "Some Page",
AttributeValues = new Dictionary<string, List<AttributeValue>>
{
{ "foobar", new List<AttributeValue> { new AttributeValue { Value = "baz" } } }
}
};
var json = obj.ToJson();
var page = Page.FromJson( json );
Assert.IsNotNull( page.AttributeValues );
Assert.IsNotEmpty( page.AttributeValues );
Assert.AreEqual( page.AttributeValues.First().Value.First().Value, "baz" );
}
示例3: ShouldImportPageRoutes
public void ShouldImportPageRoutes()
{
var obj = new Page { InternalName = "Some Page" };
obj.PageRoutes.Add( new PageRoute { Route = "/some/route" } );
var json = obj.ToJson();
var page = Page.FromJson( json );
Assert.IsNotNull( page.PageRoutes );
Assert.IsNotEmpty( page.PageRoutes );
Assert.AreEqual( page.PageRoutes.First().Route, obj.PageRoutes.First().Route );
}
示例4: ShouldImportPageContexts
public void ShouldImportPageContexts()
{
Random random = new Random();
var id = random.Next();
var obj = new Page { InternalName = "Some Page" };
obj.PageContexts.Add( new PageContext { PageId = id } );
var json = obj.ToJson();
var page = Page.FromJson( json );
Assert.IsNotNull( page.PageContexts );
Assert.IsNotEmpty( page.PageContexts );
Assert.AreEqual( page.PageContexts.First().PageId, id );
}
示例5: ShouldImportPagesRecursively
public void ShouldImportPagesRecursively()
{
const string PAGE_NAME = "Child Page";
var childPage = new Page { InternalName = PAGE_NAME };
var parentPage = new Page { InternalName = "Parent Page" };
var grandparentPage = new Page { InternalName = "Grandparent Page" };
parentPage.Pages.Add(childPage);
grandparentPage.Pages.Add(parentPage);
var json = grandparentPage.ToJson();
var page = Page.FromJson( json );
var childPages = page.Pages.First().Pages;
Assert.IsNotNull( childPages );
Assert.IsNotEmpty( childPages );
Assert.AreEqual( childPages.First().InternalName, PAGE_NAME );
}
示例6: ShouldImportBlocks
public void ShouldImportBlocks()
{
var obj = new Page { InternalName = "Some Page" };
obj.Blocks.Add(new Block { Name = "Some Block" } );
var json = obj.ToJson();
var page = Page.FromJson( json );
Assert.IsNotNull( page.Blocks );
Assert.IsNotEmpty( page.Blocks );
Assert.AreEqual( page.Blocks.First().Name, obj.Blocks.First().Name );
}
示例7: ShouldCopyPropertiesToEntity
public void ShouldCopyPropertiesToEntity()
{
var obj = new Page
{
InternalName = "Foo Page",
IsSystem = true,
};
string json = obj.ToJson();
var page = Page.FromJson( json );
Assert.AreEqual( obj.InternalName, page.InternalName );
Assert.AreEqual( obj.IsSystem, page.IsSystem );
}
示例8: ShouldImportChildPages
public void ShouldImportChildPages()
{
var obj = new Page { InternalName = "Parent" };
obj.Pages.Add ( new Page { InternalName = "Child" } );
var json = obj.ToJson();
var page = Page.FromJson( json );
Assert.IsNotNull( page.Pages );
Assert.IsNotEmpty( page.Pages );
Assert.AreEqual( page.Pages.First().InternalName, obj.Pages.First().InternalName );
}
示例9: ShouldExportChildPagesRecursively
public void ShouldExportChildPagesRecursively()
{
var parent = new Page { PageTitle = "Parent" };
var child = new Page { PageTitle = "Child" };
var grandchild = new Page { PageTitle = "Grandchild" };
parent.Pages = new List<Page> { child };
child.Pages = new List<Page> { grandchild };
var result = parent.ToJson( );
const string parentKey = "\"Title\": \"Parent\"";
const string childKey = "\"Title\": \"Child\"";
const string grandChildKey = "\"Title\": \"Grandchild\"";
Assert.Greater( result.IndexOf( parentKey ), -1 );
Assert.Greater( result.IndexOf( childKey ), -1 );
Assert.Greater( result.IndexOf( grandChildKey ), -1 );
}
示例10: ShouldExportChildPages
public void ShouldExportChildPages()
{
var page = new Page
{
PageTitle = "FooPage",
Pages = new List<Page> { new Page { PageTitle = "BarPage" } }
};
var result = page.ToJson();
result = result.Substring( result.IndexOf( "\"Pages\":" ) + 7 );
const string key = "\"Title\": \"BarPage\"";
Assert.Greater( result.IndexOf( key ), -1 );
}
示例11: ShouldExportAsJson
public void ShouldExportAsJson()
{
var page = new Page
{
PageTitle = "FooPage"
};
var result = page.ToJson();
const string key = "\"Title\": \"FooPage\"";
Assert.Greater( result.IndexOf( key ), -1, string.Format( "'{0}' was not found in '{1}'.", key, result ) );
}
示例12: ShouldNotBeEmpty
public void ShouldNotBeEmpty()
{
var page = new Page();
var result = page.ToJson();
Assert.IsNotEmpty( result );
}
示例13: GetJson
/// <summary>
/// Gets the json for this page.
/// </summary>
/// <param name="page">The page.</param>
/// <param name="isRecursive">if set to <c>true</c> [is recursive].</param>
/// <returns></returns>
private string GetJson( Page page, bool isRecursive )
{
string json;
if ( isRecursive )
{
json = page.ToJson();
}
else
{
// make a deep copy, remove it's child pages, and ToJson that...
var pageCopy = page.Clone() as Page ?? new Page();
pageCopy.Pages = new List<Page>();
json = pageCopy.ToJson();
}
return json;
}