[Mono-aspnet-list] GridView/ Databinding bug in Mono 2.10.5

H . test051102 at hotmail.com
Fri Sep 16 09:44:30 EDT 2011

By inspecting/ debugging the class library I think there might be a problem in DataBoundControl.OnPagePreLoad() which calls DataBoundControl.Initialize(). The comment in the code says
that the DataBoundControl.RequiresDataBinding property should be set to true in cases where the HTTP request is not a postback or it is a postback and view state is enabled but the data-bound control has not yet been bound. This is wrong because it does not consider the SelectCommand property of the SqlDataSource. If this property has not been defined, data binding must not take place.

From: test051102 at hotmail.com
To: mono-aspnet-list at lists.ximian.com
Date: Fri, 16 Sep 2011 13:34:37 +0000
Subject: [Mono-aspnet-list] GridView/ Databinding bug in Mono 2.10.5

Databinding in Mono is different
compared to .Net Framework. I have observed this within a complex web
application. Below you will find the steps to create a small example
web app that demonstrates the issue:

Create an ASP.NET project
	Add a GridView to Default.aspx
	Add an SqlDataSource to
	Default.aspx and connect it to the GridView
	Set the ConnectionString property
	to a valid network connection via an ODBC database driver
	Do not define the SelectCommand
	Add an event handler
	SqlDataSource1_Selecting() which should be called whenever a
	databindung operation ocurrs.
	Put a breakpoint in
	SqlDataSource1_Selecting() to verify if databinding takes place

If you run the application in Visual
Studio, you will notice that SqlDataSource1_Selecting() is never
called. But if you run the application in Mono 2.10.5
SqlDataSource1_Selecting() is called which will result in an
exception because the SelectCommand property is actually not defined.

It is common practice not to define the
SelectCommand property within the .aspx file but rather calulate the
actual query string within the code behind. Defineing the
SelectCommand property within the .aspx file requires the use of ODBC
parameters. However, Mono does currently not support this (see bug
#694047 -> reported 4 months ago but not resolved yet). As a result we are forced to use the code behind method in
Mono if we need to access a database via ODBC.

Best regards,Martin


Mono-aspnet-list mailing list
Mono-aspnet-list at lists.ximian.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.ximian.com/pipermail/mono-aspnet-list/attachments/20110916/93b51869/attachment.html 

More information about the Mono-aspnet-list mailing list