Expose internal types and members to another assemblies

In Some scenarios we might want to access some of the internally protected item to outside the assembly. By using the attribute [assembly: InternalsVisibleTo(“AssemblyName”)] in the assemblyInfo class you can access
the all the members and internal types to another assemblies.
For example if i want to access the below internal class and method in to another assembly
namespace InternalThings
{
internal class InternalClass
{
internal void InternalMethod()
{
}
}
}

for example DemoInternal, Just a add an attribute to assemblyInfo class
[assembly: InternalsVisibleTo(“DemoInternal”)] in the InternalThings Assembly ie, Our Internal members existing project or assembly.

Enjoy Coding…

Runtime Conversions with Convert.ChangeType

Sometimes we may need to convert to one type to another at runtime but we don’t know the type in advance. In this situations we can use Convert.ChangeType() method.
In this below code i had converted the value 100 which is a string and this value converted to int and double at runtime
object initialValue = "100";
Type targetType = typeof (int);
object convertedValue = Convert.ChangeType(initialValue, targetType);
Type convertedType = convertedValue.GetType();
Console.WriteLine(convertedType);
targetType = typeof(double);
convertedValue = Convert.ChangeType(initialValue, targetType);
convertedType = convertedValue.GetType();
Console.WriteLine(convertedType);

Enjoy Coding…