[Mono-dev] [Mono-patches] r107145 - trunk/mcs/class/System.Data/System.Data
Veerapuram Varadhan
vvaradhan at novell.com
Wed Jul 9 02:42:49 EDT 2008
Hi Gert,
On Fri, 2008-07-04 at 21:35 +0200, Gert Driesen wrote:
> Hey Veerapuram,
>
> I've attached a patch for the changes I mentioned. However, I found out that
> on the 1.0 profile we should still allow the value to be set to null if the
> datatype of the column is string. This matches the behavior before r107145.
>
> Let me know if it's ok to commit.
>
In case of 2.0 profile, in case of reference types, we have to set value
to DBNull instead of NULL - which the patch is missing. Except that,
patch looks good - please commit along with the mentioned changes.
Thanks,
V. Varadhan
> Gert
>
> -----Original Message-----
> From: mono-devel-list-bounces at lists.ximian.com
> [mailto:mono-devel-list-bounces at lists.ximian.com] On Behalf Of Veerapuram
> Varadhan
> Sent: vrijdag 4 juli 2008 12:18
> To: Gert Driesen
> Cc: 'mono-devel-list'
> Subject: Re: [Mono-dev] [Mono-patches] r107145 -
> trunk/mcs/class/System.Data/System.Data
>
> Hi Gert,
>
> On Thu, 2008-07-03 at 18:19 +0200, Gert Driesen wrote:
> > Hey Veerapuram,
> >
> > I don't think this change is correct. I've done some more tests, and this
> is
> > the behavior I'm seeing:
> >
> > * on 1.0 profile, you are never allowed to set value to NULL.
> > * on 2.0 profile, you are only allowed to set value to NULL if the column
> is
> > backed by a reference type.
> >
> > I'll add unit tests for this to DataRowTest2.cs in a few minutes, and mark
> > them NotWorking.
> >
> > Let me know if you want me to submit a patch that changes our
> implementation
> > accordingly.
> >
> That would be great. Feel free to submit tests and the patch.
>
> Thanks,
>
> V. Varadhan
>
> > Gert
> >
> > -----Original Message-----
> > From: mono-patches-bounces at lists.ximian.com
> > [mailto:mono-patches-bounces at lists.ximian.com] On Behalf Of Veerapuram
> > Varadhan (vvaradhan at novell.com)
> > Sent: donderdag 3 juli 2008 15:38
> > To: mono-patches at lists.ximian.com; ximian.monolist at gmail.com;
> > mono-svn-patches-garchive-20758 at googlegroups.com
> > Subject: [Mono-patches] r107145 - trunk/mcs/class/System.Data/System.Data
> >
> > Author: varadhan
> > Date: 2008-07-03 09:38:09 -0400 (Thu, 03 Jul 2008)
> > New Revision: 107145
> >
> > Modified:
> > trunk/mcs/class/System.Data/System.Data/ChangeLog
> > trunk/mcs/class/System.Data/System.Data/DataRow.cs
> > Log:
> > Use DBNull value instead of throwing an exception
> >
> >
> > Modified: trunk/mcs/class/System.Data/System.Data/ChangeLog
> > ===================================================================
> > --- trunk/mcs/class/System.Data/System.Data/ChangeLog 2008-07-03 13:37:14
> > UTC (rev 107144)
> > +++ trunk/mcs/class/System.Data/System.Data/ChangeLog 2008-07-03 13:38:09
> > UTC (rev 107145)
> > @@ -1,3 +1,7 @@
> > +2008-07-03 Marek Habersack <mhabersack at novell.com>
> > +
> > + * DataRow.cs (this []): Use DBNull instead of throwing an exception
> > +
> > 2008-07-01 Rodrigo Kumpera <rkumpera at novell.com>
> >
> > * DataTable.cs: Kill some foreach loops.
> >
> > Modified: trunk/mcs/class/System.Data/System.Data/DataRow.cs
> > ===================================================================
> > --- trunk/mcs/class/System.Data/System.Data/DataRow.cs 2008-07-03
> 13:37:14
> > UTC (rev 107144)
> > +++ trunk/mcs/class/System.Data/System.Data/DataRow.cs 2008-07-03
> 13:38:09
> > UTC (rev 107145)
> > @@ -178,9 +178,8 @@
> > DataColumn column =
> > _table.Columns[columnIndex];
> > _table.ChangingDataColumn (this, column,
> > value);
> >
> > - if (value == null && column.DataType !=
> > typeof(string)) {
> > - throw new ArgumentException("Cannot
> > set column " + column.ColumnName + " to be null, Please use DBNull
> > instead");
> > - }
> > + if (value == null && column.DataType !=
> > typeof(string))
> > + value = DBNull.Value;
> > _rowChanged = true;
> >
> > CheckValue (value, column);
> >
> > _______________________________________________
> > Mono-patches maillist - Mono-patches at lists.ximian.com
> > http://lists.ximian.com/mailman/listinfo/mono-patches
> >
>
> _______________________________________________
> Mono-devel-list mailing list
> Mono-devel-list at lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-devel-list
More information about the Mono-devel-list
mailing list