Ejemplo n.º 1
0
        public static List <ObjectInitialization> GetClassProperties(string variableName)
        {
            var classProperties = new List <ObjectInitialization>();

            var type = DebuggerHelper.GetValue(ExpressionsHelper.TypeFullName(variableName)).Replace("\"", String.Empty).Replace("+", ".");

            ////Need to cast it to specific type when enumeration contains abstract types
            foreach (string propertyName in DebuggerHelper.GetMembersName(ExpressionsHelper.Cast(variableName, type)))
            {
                if (IsPropertyInitializable(variableName, propertyName))
                {
                    var propertyInitialization = ObjectInitializationFactory.CreateObjectInitialization(String.Concat(variableName, ".", propertyName));

                    if (propertyInitialization != null)
                    {
                        classProperties.Add(propertyInitialization);
                    }
                }
            }

            return(classProperties);
        }
Ejemplo n.º 2
0
 private static bool IsPropertyWritable(string variableName, string propertyName)
 {
     return("true" == DebuggerHelper.GetValue(ExpressionsHelper.CanWrite(variableName, propertyName)).ToLower());
 }
Ejemplo n.º 3
0
 private static bool IsDictionary(string variableName)
 {
     return("\"Dictionary`2\"" == DebuggerHelper.GetValue(ExpressionsHelper.TypeName(variableName)));
 }
Ejemplo n.º 4
0
 private static bool IsFieldPublic(string variableName, string propertyName)
 {
     return("false" == DebuggerHelper.GetValue(ExpressionsHelper.IsInitOnly(variableName, propertyName)).ToLower());
 }
Ejemplo n.º 5
0
 private static bool IsDatetime(string variableName)
 {
     //pourrait être plus précis
     return(DebuggerHelper.GetValue(ExpressionsHelper.TypeFullName(variableName)).Contains("DateTime"));
 }
Ejemplo n.º 6
0
 private static bool IsArray(string variableName)
 {
     return("\"Array\"" == DebuggerHelper.GetValue(ExpressionsHelper.BaseTypeName(variableName)));
 }
Ejemplo n.º 7
0
 private static bool IsList(string variableName)
 {
     return("\"List`1\"" == DebuggerHelper.GetValue(ExpressionsHelper.TypeName(variableName)));
 }
Ejemplo n.º 8
0
 private static bool IsString(string variableName)
 {
     return("\"System.String\"" == DebuggerHelper.GetValue(ExpressionsHelper.TypeFullName(variableName)));
 }
Ejemplo n.º 9
0
 private static bool IsClass(string variableName)
 {
     return("true" == DebuggerHelper.GetValue(ExpressionsHelper.IsClass(variableName)).ToLower());
 }