/*-------------------------------------------------------------------------
 * 功能描述:BimJsonUtil
 * 作者:xulisong
 * 创建时间: 2019/6/18 11:23:16
 * 版本号:v1.0
 *  -------------------------------------------------------------------------*/

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using JBIM;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using RevitToJBim.MBI;

namespace RevitToJBim.JsonConverter
{
    public static class BimJsonUtil
    {
        public static string Serializer(object document)
        {
            JsonSerializerSettings jsetting = CreateDefaultSettings();
            string dataStr =JsonConvert.SerializeObject(document, jsetting);
            return dataStr;
        }
        private static JsonSerializerSettings CreateDefaultSettings()
        {
            JsonSerializerSettings jsetting = new JsonSerializerSettings() { NullValueHandling = NullValueHandling.Ignore };
            jsetting.Converters.Add(new BimIdConverter());
            //mxg 显示x:,y:,z:格式的
            //jsetting.Converters.Add(new XYZConverter());
            jsetting.Converters.Add(new StringEnumConverter());
            jsetting.Converters.Add(new ParameterConverter());
            return jsetting;
        }
    }
    
}