The System.FileDocument has an attribute HasContents. In our application the user can upload attachments. For some files that are uploaded we see that the value of HasContents is ‘true’ while the Size = 0. What logic determines the HasContents value?
I'v seen this happen in case you restore a database copy wihtout the related files. Maybe that is the case in your situation?