/// <summary> /// Operations performed before the serialization /// </summary> public void BeforeSerialization() { InitParameters(); _tempParameters = Parameters.ToList(); //Remove parameters identical to config Parameters.RemoveAll(i => i.Value == null || i.Value == i.ConfigValue); if (DefinitionScript != null && DefinitionScript.Trim().Replace("\r\n", "\n") == DefaultDefinitionScript.Trim().Replace("\r\n", "\n")) DefinitionScript = null; if (LoadScript != null && LoadScript.Trim().Replace("\r\n", "\n") == DefaultLoadScript.Trim().Replace("\r\n", "\n")) LoadScript = null; }
/// <summary> /// Helper to check if the 2 MetaTable have the same definition /// </summary> public bool IsIdentical(MetaTable table) { bool result = TemplateName == table.TemplateName && DefinitionScript.Trim() == table.DefinitionScript.Trim() && (LoadScript == null && table.LoadScript == null) || (LoadScript.Trim() == table.LoadScript.Trim()) ; if (result) { foreach (var parameter in Parameters) { if (parameter.Value != table.GetValue(parameter.Value)) { result = false; break; } } } return(result); }