Simple implementation of generic BINARY TREE in C#

using System;
public class BinaryTree
{
	public BinaryTree(
		T value,
		BinaryTree leftNode = null,
		BinaryTree rightNode = null)
	{
		this.Value = value;
		this.LeftNode = leftNode;
		this.RightNode = rightNode;
	}

	public T Value { get; private set; }

	public BinaryTree LeftNode { get; private set; }

	public BinaryTree RightNode { get; private set; }

	public void EachPreOrder(Action action)
	{
		action(this.Value);

		if (this.LeftNode != null)
		{
			this.LeftNode.EachPreOrder(action);
		}

		if (this.RightNode != null)
		{
			this.RightNode.EachPreOrder(action);
		}
	}

	public void EachInOrder(Action action)
	{
		if (this.LeftNode != null)
		{
			this.LeftNode.EachPreOrder(action);
		}

		action(this.Value);

		if (this.RightNode != null)
		{
			this.RightNode.EachPreOrder(action);
		}
	}

	public void EachPostOrder(Action action)
	{
		if (this.LeftNode != null)
		{
			this.LeftNode.EachPreOrder(action);
		}

		if (this.RightNode != null)
		{
			this.RightNode.EachPreOrder(action);
		}
		
		action(this.Value);
	}
}

How to convert decimal to binary number in C# using method

    using System;
    using System.Text;

    class DecToBin
    {
        static void Main(string[] args)
        {
            long num = int.MaxValue * 2L;
            Console.WriteLine(DecimalToBinary(num)); // 11111111111111111111111111111110
        }

        private static string DecimalToBinary(long num)
        {
            StringBuilder res = new StringBuilder();
            while (num > 0)
            {
                res.Insert(0, num % 2);
                num /= 2;
            }

            return res.ToString();
        }
    }

How to convert binary number to decimal in C# using method.

using System;

    class BinToDec
    {
        static void Main(string[] args)
        {
            string binary = "101";
            Console.WriteLine(BinaryToDecimal(binary)); // will return 5

        }

        private static long BinaryToDecimal(string binary)
        {
            long decimalNum = 0;
            for (int i = binary.Length - 1, pow = 0; i >= 0; i--, pow++)
            {
                decimalNum += int.Parse(binary[i].ToString()) * (long)Math.Pow(2, pow);
            }

            return decimalNum;
        }
    }