public BsonSerializationInfo GetMemberSerializationInfo(string memberName)
{
foreach (var memberMap in _classMap.AllMemberMaps)
{
if (memberMap.MemberName == memberName)
{
var elementName = memberMap.ElementName;
var serializer = memberMap.GetSerializer(memberMap.MemberType);
var nominalType = memberMap.MemberType;
var serializationOptions = memberMap.SerializationOptions;
return new BsonSerializationInfo(elementName, serializer, nominalType, serializationOptions);
}
}
var message = string.Format(
"Class {0} does not have a member called {1}.",
BsonUtils.GetFriendlyTypeName(_classMap.ClassType),
memberName);
throw new ArgumentOutOfRangeException("memberName", message);
}