Author: igorz
Date: 2007-05-27 09:23:17 -0400 (Sun, 27 May 2007)
New Revision: 78009
Modified:
trunk/mcs/class/System.Web/System.Web.UI.WebControls/ChangeLog
trunk/mcs/class/System.Web/System.Web.UI.WebControls/ObjectDataSourceView.cs
trunk/mcs/class/System.Web/System.Web.UI.WebControls/SqlDataSourceView.cs
trunk/mcs/class/System.Web/Test/System.Web.UI.WebControls/ChangeLog
trunk/mcs/class/System.Web/Test/System.Web.UI.WebControls/ObjectDataSourceViewTest.cs
trunk/mcs/class/System.Web/Test/System.Web.UI.WebControls/SqlDataSourceViewTest.cs
Log:
2007-05-27 Igor Zelmanovich <[EMAIL PROTECTED]>
* ObjectDataSourceView.cs: fixed SelectMethod and SelectCountMethod
properties:
when changed, DataSourceViewChanged event is raised.
* SqlDataSourceView: fixed SelectCommand property:
when changed, DataSourceViewChanged event is raised.
Modified: trunk/mcs/class/System.Web/System.Web.UI.WebControls/ChangeLog
===================================================================
--- trunk/mcs/class/System.Web/System.Web.UI.WebControls/ChangeLog
2007-05-27 13:22:15 UTC (rev 78008)
+++ trunk/mcs/class/System.Web/System.Web.UI.WebControls/ChangeLog
2007-05-27 13:23:17 UTC (rev 78009)
@@ -1,3 +1,11 @@
+2007-05-27 Igor Zelmanovich <[EMAIL PROTECTED]>
+
+ * ObjectDataSourceView.cs: fixed SelectMethod and SelectCountMethod
properties:
+ when changed, DataSourceViewChanged event is raised.
+
+ * SqlDataSourceView: fixed SelectCommand property:
+ when changed, DataSourceViewChanged event is raised.
+
2007-05-25 Marek Habersack <[EMAIL PROTECTED]>
* ObjectDataSourceView.cs: CreateDataObject must pay attention to
Modified:
trunk/mcs/class/System.Web/System.Web.UI.WebControls/ObjectDataSourceView.cs
===================================================================
---
trunk/mcs/class/System.Web/System.Web.UI.WebControls/ObjectDataSourceView.cs
2007-05-27 13:22:15 UTC (rev 78008)
+++
trunk/mcs/class/System.Web/System.Web.UI.WebControls/ObjectDataSourceView.cs
2007-05-27 13:23:17 UTC (rev 78009)
@@ -401,7 +401,10 @@
return selectCountMethod != null ?
selectCountMethod : string.Empty;
}
set {
+ if (SelectCountMethod == value)
+ return;
selectCountMethod = value;
+ OnDataSourceViewChanged (EventArgs.Empty);
}
}
@@ -410,7 +413,10 @@
return selectMethod != null ? selectMethod :
string.Empty;
}
set {
+ if (SelectMethod == value)
+ return;
selectMethod = value;
+ OnDataSourceViewChanged (EventArgs.Empty);
}
}
@@ -979,7 +985,7 @@
return null;
foreach (DictionaryEntry de in values) {
- string valueName = format == true ?
FormatOldParameter (de.Key.ToString ()) : de.Key.ToString ();
+ string valueName = format == true ?
FormatOldParameter (de.Key.ToString ()) : de.Key.ToString ();
if (String.Compare (name, valueName,
StringComparison.InvariantCultureIgnoreCase) == 0)
return values [de.Key];
}
Modified:
trunk/mcs/class/System.Web/System.Web.UI.WebControls/SqlDataSourceView.cs
===================================================================
--- trunk/mcs/class/System.Web/System.Web.UI.WebControls/SqlDataSourceView.cs
2007-05-27 13:22:15 UTC (rev 78008)
+++ trunk/mcs/class/System.Web/System.Web.UI.WebControls/SqlDataSourceView.cs
2007-05-27 13:23:17 UTC (rev 78009)
@@ -642,10 +642,15 @@
}
// LAME SPEC: MSDN says value should be saved in ViewState but
tests show otherwise.
- private string selectCommand = "";
+ private string selectCommand;
public string SelectCommand {
- get { return selectCommand; }
- set { selectCommand = value; }
+ get { return selectCommand != null ? selectCommand :
string.Empty; }
+ set {
+ if (SelectCommand == value)
+ return;
+ selectCommand = value;
+ OnDataSourceViewChanged (EventArgs.Empty);
+ }
}
// LAME SPEC: MSDN says value should be saved in ViewState but
tests show otherwise.
Modified: trunk/mcs/class/System.Web/Test/System.Web.UI.WebControls/ChangeLog
===================================================================
--- trunk/mcs/class/System.Web/Test/System.Web.UI.WebControls/ChangeLog
2007-05-27 13:22:15 UTC (rev 78008)
+++ trunk/mcs/class/System.Web/Test/System.Web.UI.WebControls/ChangeLog
2007-05-27 13:23:17 UTC (rev 78009)
@@ -1,3 +1,9 @@
+2007-05-27 Igor Zelmanovich <[EMAIL PROTECTED]>
+
+ * ObjectDataSourceViewTest.cs:
+ * SqlDataSourceViewTest.cs:
+ new tests were added.
+
2007-05-07 Igor Zelmanovich <[EMAIL PROTECTED]>
* MenuTest.cs:
Modified:
trunk/mcs/class/System.Web/Test/System.Web.UI.WebControls/ObjectDataSourceViewTest.cs
===================================================================
---
trunk/mcs/class/System.Web/Test/System.Web.UI.WebControls/ObjectDataSourceViewTest.cs
2007-05-27 13:22:15 UTC (rev 78008)
+++
trunk/mcs/class/System.Web/Test/System.Web.UI.WebControls/ObjectDataSourceViewTest.cs
2007-05-27 13:23:17 UTC (rev 78009)
@@ -931,6 +931,77 @@
}
}
+ [Test]
+ public void SelectCountMethod_DataSourceViewChanged ()
+ {
+ ObjectViewPoker view = new ObjectViewPoker (new
ObjectDataSource (), "", null);
+ view.DataSourceViewChanged += new EventHandler
(view_DataSourceViewChanged);
+
+ Assert.AreEqual ("", view.SelectCountMethod);
+ view.SelectCountMethod = null;
+ Assert.AreEqual (1, eventsCalled.Count);
+ Assert.AreEqual ("view_DataSourceViewChanged",
eventsCalled [0]);
+ Assert.AreEqual ("", view.SelectCountMethod);
+
+ view.SelectCountMethod = null;
+ Assert.AreEqual (2, eventsCalled.Count);
+ Assert.AreEqual ("view_DataSourceViewChanged",
eventsCalled [1]);
+ Assert.AreEqual ("", view.SelectCountMethod);
+
+ view.SelectCountMethod = "";
+ Assert.AreEqual (2, eventsCalled.Count);
+ }
+
+ [Test]
+ public void SelectMethod_DataSourceViewChanged2 ()
+ {
+ ObjectViewPoker view = new ObjectViewPoker (new
ObjectDataSource (), "", null);
+ view.DataSourceViewChanged += new EventHandler
(view_DataSourceViewChanged);
+
+ Assert.AreEqual ("", view.SelectMethod);
+ view.SelectMethod = null;
+ Assert.AreEqual (1, eventsCalled.Count);
+ Assert.AreEqual ("view_DataSourceViewChanged",
eventsCalled [0]);
+ Assert.AreEqual ("", view.SelectMethod);
+
+ view.SelectMethod = null;
+ Assert.AreEqual (2, eventsCalled.Count);
+ Assert.AreEqual ("view_DataSourceViewChanged",
eventsCalled [1]);
+ Assert.AreEqual ("", view.SelectMethod);
+
+ view.SelectMethod = "";
+ Assert.AreEqual (2, eventsCalled.Count);
+ }
+
+ [Test]
+ public void SelectMethod_DataSourceViewChanged1 ()
+ {
+ ObjectViewPoker view = new ObjectViewPoker (new
ObjectDataSource (), "", null);
+ view.DataSourceViewChanged+=new
EventHandler(view_DataSourceViewChanged);
+
+ view.SelectMethod = "select_1";
+ Assert.AreEqual (1, eventsCalled.Count);
+ Assert.AreEqual ("view_DataSourceViewChanged",
eventsCalled [0]);
+
+ view.SelectMethod = "select_2";
+ Assert.AreEqual (2, eventsCalled.Count);
+ Assert.AreEqual ("view_DataSourceViewChanged",
eventsCalled [1]);
+
+ view.SelectMethod = "select_2";
+ Assert.AreEqual (2, eventsCalled.Count);
+
+ view.SelectCountMethod = "selectCount_1";
+ Assert.AreEqual (3, eventsCalled.Count);
+ Assert.AreEqual ("view_DataSourceViewChanged",
eventsCalled [2]);
+
+ view.SelectCountMethod = "selectCount_2";
+ Assert.AreEqual (4, eventsCalled.Count);
+ Assert.AreEqual ("view_DataSourceViewChanged",
eventsCalled [3]);
+
+ view.SelectCountMethod = "selectCount_2";
+ Assert.AreEqual (4, eventsCalled.Count);
+ }
+
private static void InitializeView (ObjectViewPoker view,
InitViewType initType, out Hashtable keys, out Hashtable old_value, out
Hashtable new_value)
{
view.TypeName = typeof
(DummyDataSourceObject).AssemblyQualifiedName;
Modified:
trunk/mcs/class/System.Web/Test/System.Web.UI.WebControls/SqlDataSourceViewTest.cs
===================================================================
---
trunk/mcs/class/System.Web/Test/System.Web.UI.WebControls/SqlDataSourceViewTest.cs
2007-05-27 13:22:15 UTC (rev 78008)
+++
trunk/mcs/class/System.Web/Test/System.Web.UI.WebControls/SqlDataSourceViewTest.cs
2007-05-27 13:23:17 UTC (rev 78009)
@@ -375,6 +375,53 @@
DontMatchParams,
}
+ [Test]
+ public void SelectCommand_DataSourceViewChanged2 ()
+ {
+ SqlDataSource ds = new SqlDataSource ();
+ SqlViewPoker view = new SqlViewPoker (ds,
"DefaultView", null);
+ view.DataSourceViewChanged += new EventHandler
(view_DataSourceViewChanged);
+
+ Assert.AreEqual ("", view.SelectCommand);
+ view.SelectCommand = null;
+ Assert.AreEqual (1, eventsCalled.Count);
+ Assert.AreEqual ("view_DataSourceViewChanged",
eventsCalled [0]);
+ Assert.AreEqual ("", view.SelectCommand);
+
+ view.SelectCommand = null;
+ Assert.AreEqual (2, eventsCalled.Count);
+ Assert.AreEqual ("view_DataSourceViewChanged",
eventsCalled [1]);
+ Assert.AreEqual ("", view.SelectCommand);
+
+ view.SelectCommand = "";
+ Assert.AreEqual (2, eventsCalled.Count);
+ }
+
+ [Test]
+ public void SelectCommand_DataSourceViewChanged1 ()
+ {
+ SqlDataSource ds = new SqlDataSource ();
+ SqlViewPoker view = new SqlViewPoker (ds,
"DefaultView", null);
+ view.DataSourceViewChanged+=new
EventHandler(view_DataSourceViewChanged);
+
+ view.SelectCommand = "select 1";
+ Assert.AreEqual (1, eventsCalled.Count);
+ Assert.AreEqual ("view_DataSourceViewChanged",
eventsCalled[0]);
+
+ view.SelectCommand = "select 2";
+ Assert.AreEqual (2, eventsCalled.Count);
+ Assert.AreEqual ("view_DataSourceViewChanged",
eventsCalled [1]);
+
+ view.SelectCommand = "select 2";
+ Assert.AreEqual (2, eventsCalled.Count);
+
+ view.SelectCommandType =
SqlDataSourceCommandType.StoredProcedure;
+ Assert.AreEqual (2, eventsCalled.Count);
+
+ view.SelectCommandType = SqlDataSourceCommandType.Text;
+ Assert.AreEqual (2, eventsCalled.Count);
+ }
+
private static SqlViewPoker InitializeView (InitViewType
initType, ConflictOptions conflictDetection, out Hashtable keys, out Hashtable
old_value, out Hashtable new_value)
{
SqlDataSource ds = new SqlDataSource ();
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches