Browse Source

* ObjectStateFormatter.cs: optimized loops in array formatters

svn path=/trunk/mcs/; revision=81699
Vladimir Krasnov 18 years ago
parent
commit
aac94353f2

+ 4 - 0
mcs/class/System.Web/System.Web.UI/ChangeLog

@@ -1,3 +1,7 @@
+2007-06-24  Vladimir Krasnov  <[email protected]>
+
+	* ObjectStateFormatter.cs: optimized loops in array formatters
+
 2007-07-03  Marek Habersack  <[email protected]>
 
 	* SimpleWebHandlerParser.cs: improve directive

+ 6 - 6
mcs/class/System.Web/System.Web.UI/ObjectStateFormatter.cs

@@ -693,8 +693,8 @@ namespace System.Web.UI {
 				
 				w.Write (PrimaryId);
 				Write7BitEncodedInt (w, l.Count);
-				foreach (object i in l)
-					WriteObject (w, i, ctx);
+				for (int i = 0; i < l.Count; i++)
+					WriteObject (w, l [i], ctx);
 			}
 			
 			protected override object Read (byte token, BinaryReader r, ReaderContext ctx)
@@ -753,8 +753,8 @@ namespace System.Web.UI {
 				
 				w.Write (PrimaryId);
 				Write7BitEncodedInt (w, val.Length);
-				foreach (object i in val)
-					WriteObject (w, i, ctx);
+				for (int i = 0; i < val.Length; i++)
+					WriteObject (w, val [i], ctx);
 			}
 			
 			protected override object Read (byte token, BinaryReader r, ReaderContext ctx)
@@ -893,8 +893,8 @@ namespace System.Web.UI {
 				WriteObject (w, val.GetType ().GetElementType (), ctx);
 				
 				Write7BitEncodedInt (w, val.Length);
-				foreach (object i in val)
-					WriteObject (w, i, ctx);
+				for (int i = 0; i < val.Length; i++)
+					WriteObject (w, val.GetValue (i), ctx);
 			}
 			
 			protected override object Read (byte token, BinaryReader r, ReaderContext ctx)