Skip to content

Commit

Permalink
Its now possible to load propertys of type enum.
Browse files Browse the repository at this point in the history
  • Loading branch information
lanwin committed May 5, 2010
1 parent 00a8a8a commit 219374d
Showing 1 changed file with 6 additions and 1 deletion.
7 changes: 6 additions & 1 deletion source/MongoDB/Configuration/Mapping/Model/MemberMapBase.cs
Expand Up @@ -20,6 +20,9 @@ public class MemberMapBase
/// <param name = "setter">The setter.</param>
protected MemberMapBase(string memberName, Type memberReturnType, Func<object, object> getter, Action<object, object> setter)
{
if(memberReturnType == null)
throw new ArgumentNullException("memberReturnType");

_getter = getter;
_memberName = memberName;
_memberReturnType = memberReturnType;
Expand Down Expand Up @@ -68,7 +71,9 @@ public virtual void SetValue(object instance, object value)
{
var code = Convert.GetTypeCode(value);

if(code != TypeCode.Object)
if(_memberReturnType.IsEnum)
value = Enum.ToObject(_memberReturnType, value);
else if(code != TypeCode.Object)
value = Convert.ChangeType(value, _memberReturnType);
}
catch(FormatException exception)
Expand Down

0 comments on commit 219374d

Please sign in to comment.