I have a class as like the following
namespace Foo.Bar
{
    public static class ParentClass
    {
      public const string myValue = "Can get this value";
      public static class ChildClass
      {
        public const string myChildValue = "I want to get this value";
      }
     }
}
I can get the myValue using powershell,
[System.Reflection.Assembly]::LoadWithPartialName("Foo.Bar")
$parentValue = [Foo.Bar.ParentClass]::myValue
But I'm unable to get the class within the class myChildValue. Can anyone help?
Thought it might be something like below but $childValue is always empty.
[System.Reflection.Assembly]::LoadWithPartialName("Foo.Bar")
$childValue = [Foo.Bar.ParentClass.ChildClass]::myChildValue
                It's [Foo.Bar.ParentClass+ChildClass]. On PowerShell 3 tab completion will tell you as much. Furthermore, you can use Add-Type to compile and load the code directly:
C:\Users\Joey> add-type 'namespace Foo.Bar
>> {
>>     public static class ParentClass
>>     {
>>       public const string myValue = "Can get this value";
>>
>>       public static class ChildClass
>>       {
>>         public const string myChildValue = "I want to get this value";
>>       }
>>      }
>> }'
>>
C:\Users\Joey> [Foo.Bar.ParentClass+ChildClass]::myChildValue
I want to get this value
No need to fiddle around with the C# compiler and [Assembly]::LoadWithPartialName.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With