private Type GetMemberType(MemberInfo memberInfo)
{
var fieldInfo = memberInfo as FieldInfo;
if (fieldInfo != null)
{
return fieldInfo.FieldType;
}
var propertyInfo = memberInfo as PropertyInfo;
if (propertyInfo != null)
{
return propertyInfo.PropertyType;
}
// should never happen
throw new BsonInternalException();
}