a7DocumentDbStudio.Model.DocumentModel.toOrderedJToken C# (CSharp) Method

toOrderedJToken() private method

gets the _* properties at the bottom
private toOrderedJToken ( ) : JToken
return JToken
        private JToken toOrderedJToken()
        {
            var ordered = new JObject();
            var jDocument = JToken.FromObject(_document);
            List<JToken> toBottom = new List<JToken>();
            foreach(var prop in jDocument.Children())
            {
                var jp = prop as JProperty;
                if (jp != null)
                {
                    if (jp.Name.StartsWith("_"))
                        toBottom.Add(jp);
                    else
                        ordered.Add(jp);
                }
                else
                {
                    ordered.Add(prop);
                }
            }
            foreach(var prop in toBottom)
            {
                ordered.Add(prop);
            }
            return ordered;
        }
    }