static void Main(string[] args)
        {
            var PublicClassInternalFields = new PublicClassInternalField();
            var PublicClassPrivateFields  = new PublicClassPrivateFields();

            string Name = "internalInt";

            ReflectionHelper.GetAndSetValue(PublicClassInternalFields, Value, Name);

            Value = 2000;
            Name  = "privateInt";

            ReflectionHelper.GetAndSetValue(PublicClassPrivateFields, Value, Name);

            object InternalClassPublicConstructorPrivateField = ReflectionHelper.CreateInstanceOfInternalClass("InternalClasses", "InternalClasses", "InternalClassPublicConstructorPrivateField");

            Console.WriteLine($"Internal class {InternalClassPublicConstructorPrivateField.GetType()} is created fine");
            ReflectionHelper.GetAndSetValue(InternalClassPublicConstructorPrivateField, Value, Name);

            object InternalClassPrivteConstructorPrivateField = ReflectionHelper.CreateInstanceOfInternalClass("InternalClasses", "InternalClasses", "InternalClassPrivteConstructorPrivateField");

            Console.WriteLine($"Internal class {InternalClassPrivteConstructorPrivateField.GetType()} is created fine");
            ReflectionHelper.GetAndSetValue(InternalClassPrivteConstructorPrivateField, Value, Name);

            object InternalClassInternalConstructorPrivateField = ReflectionHelper.CreateInstanceOfInternalClass("InternalClasses", "InternalClasses", "InternalClassInternalConstructorPrivateField");

            Console.WriteLine($"Internal class {InternalClassInternalConstructorPrivateField.GetType()} is created fine");
            ReflectionHelper.GetAndSetValue(InternalClassInternalConstructorPrivateField, Value, Name);

            ReflectionHelper.PrintAllFields(InternalClassInternalConstructorPrivateField);

            Console.ReadLine();
        }
Beispiel #2
0
        public void GetAndSetMethodValueInt()
        {
            var    tmp   = new PublicClassPrivateFields();
            object value = ReflectionHelper.GetAndSetValue(tmp, 1234, "privateInt");

            Assert.IsNotNull(value);
            Assert.IsTrue(value is Int32);
            Assert.AreEqual(value, 1234);
        }
Beispiel #3
0
        public void GetAndSetValueInt()
        {
            var    tmp   = new PublicClassPrivateFields();
            object value = ReflectionHelper.GetNonPublicIntFiledValue(tmp, "privateInt", tmp.GetType());

            Assert.IsNotNull(value);
            Assert.IsTrue(value is Int32);
            Assert.AreEqual(value, 100);

            ReflectionHelper.SetNonPublicIntFiledValue(tmp, 666, "privateInt", tmp.GetType());

            value = ReflectionHelper.GetNonPublicIntFiledValue(tmp, "privateInt", tmp.GetType());
            Assert.IsNotNull(value);
            Assert.IsTrue(value is Int32);
            Assert.AreEqual(value, 666);
        }
Beispiel #4
0
        public void GetAndSetValueString()
        {
            var    tmp   = new PublicClassPrivateFields();
            object value = ReflectionHelper.GetNonPublicIntFiledValue(tmp, "privateString", tmp.GetType());

            Assert.IsNotNull(value);
            Assert.IsTrue(value is string);
            Assert.AreEqual(value, "100");

            ReflectionHelper.SetNonPublicIntFiledValue(tmp, "privateString", "privateString", tmp.GetType());

            value = ReflectionHelper.GetNonPublicIntFiledValue(tmp, "privateString", tmp.GetType());
            Assert.IsNotNull(value);
            Assert.IsTrue(value is string);
            Assert.AreEqual(value, "privateString");
        }