Finally it turned out to be a very simple fix (feeling silly right now). I was able to make the compiler error go away after casting each of the numbers I use to an ushort as shown below.
for (ushort objIndex = 0; objIndex < data.Length; ++objIndex)
{
ushort length = sizeof(UInt16);
data[objIndex] = (ushort)( (ushort)(byteArray[objIndex * length] << (ushort)8) +
byteArray[objIndex + 1] );
}
Or this.
for (ushort objIndex = 0; objIndex < data.Length; ++objIndex)
{
data[objIndex] = (ushort)((byteArray[objIndex * sizeof(UInt16)] << 8) +
byteArray[objIndex + 1] );
}