[ http://nagoya.apache.org/jira/browse/IBATISNET-13?page=history ]
Gilles Bayon reassigned IBATISNET-13:
-------------------------------------
Assign To: Gilles Bayon
> nullValue not working with GUIDs
> --------------------------------
>
> Key: IBATISNET-13
> URL: http://nagoya.apache.org/jira/browse/IBATISNET-13
> Project: iBatis for .NET
> Type: Bug
> Reporter: Henrik Uffe Jensen
> Assignee: Gilles Bayon
>
> Convert.ChangeType for some reason does not support GUIDs, so when the
> 'nullValue' attribute is used on a parameter in a parameterMap an exception
> is thrown.
> In
> IBatisNet.DataMapper.Configuration.ParameterMapping.ParameterMap.GetValueOfProperty()
> the nullValue to use for comparing is retrieved with the following code,
> where the Convert.ChangeType does not like a Guid
> if (propertyInfo.PropertyType == typeof(System.Decimal))
> {
> CultureInfo culture = new CultureInfo( "en-US" );
> // nullValue decimal must be ######.##
> nullValue = decimal.Parse( property.NullValue, culture);
> }
> else
> {
> nullValue = Convert.ChangeType( property.NullValue,
> propertyInfo.PropertyType );
> }
> The solution is to handle GUIDs as a special case just as is already done
> with Decimal values. I tested with the following code and
> nullValue="00000000-0000-0000-0000-000000000000" and then using Guid.Empty on
> my properties and it worked fine
> if (propertyInfo.PropertyType == typeof(System.Decimal))
> {
> CultureInfo culture = new CultureInfo( "en-US" );
> // nullValue decimal must be ######.##
> nullValue = decimal.Parse( property.NullValue, culture);
> }
> else if (propertyInfo.PropertyType == typeof(System.Guid))
> {
> nullValue = new Guid(property.NullValue);
> }
> else
> {
> nullValue = Convert.ChangeType( property.NullValue,
> propertyInfo.PropertyType );
> }
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://nagoya.apache.org/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
http://www.atlassian.com/software/jira