There may be an easier way than this, but what I've done in the past is look into the Class table.
In this case, you would use DataClassInfoProvider and get the class of "BizForm.MyFormNameHere", then parse the ClassFormDefinition (xml) into an XML doc, and select all the //field nodes. This will give you the Column Names, and types.
string MyFormName = "Contact";
DataClassInfo formInfo = DataClassInfoProvider.GetDataClass("BizForm."+MyFormName);
XmlDocument fieldDocs = formInfo.ClassFormDefinition;
foreach(XmlNode fieldNode in fieldDocs.SelectNodes("//field")) {
string colName = fieldNode.Attributes["column"].Value; // Could be wrong on the "Value" part
string colType = fieldNode.Attributes["columntype"].Value; // Could be wrong on the "Value" part
object theColValue = e.Item.GetValue(colName);
}
Something like that.