byte [] lengthPrefix = BitConverter.GetBytes (message.length);
эквивалент для этого будет
long ID = length;
Byte *some = (Byte*)&ID;
Byte b1 = some[0];
Byte b2 = some[1];
Byte b3 = some[2];
Byte b4 = some[3];
Byte lengthPrefix[]= {b1,b2,b3,b4};
Основная идея, сколько байтов вам нужно ...
поэтому где-то перед этой операцией укажите, какую длину вы хотите и сколько байтов вы хотите. Так что на долго достаточно 4 байта. Для uint32 вам, вероятно, нужно больше.