after
string[] Data = serialPortData.Split(new string[] { "#" },
you have string data - so it will never have the type datetime.
I'd suggest just go through each entry and try to parse it into a DateTime
foreach(string strData in Data)
{
.... for every second element or each element that could be converted
DateTime dtData = DateTime.Parse(strData); // Or use tryparse if not shure
}