Just to share my experience on this topic, it mean be good to take these points into considerations when you are planning to deploy a domain controller on a Hyper-V machine.
Point number 1:
As a precaution, do not take snapshot of a Active Directory Domain Controller Virtual Machine. This is to prevent accidental or unplanned roll back of your Active Directory contents. Remember a snapshot is not a valid backup of your system state data. If you apply a snapshot of your Active Directory Domain Controller Virtual Machine, this causes an update sequence number (USN) rollback.
Point number 2:
If you take snapshot, a differencing disk AVHD file is created. And this AVHD will merge with the primary VHD file when you do a proper shutdown of the virtual machine. The duration of the merging depends on the size of the AVHD file. Now, imagine if you are unaware of this and shutdown your physical Hyper-V server machine before the merging can complete. Then you want to move, copy or migrate this domain controller virtual machine and you copy the files to a new Hyper-V server. Unknowingly, you load the unmerged VHD file on your new Hyper-V server and disaster strikes.
Point number 3:
Disable Time synchronization on your Domain Controller Virtual Server. This is to prevent time skewed. Authentication problems will occurred when your time is out of sync.