2005-01-31 Zoltan Varga <vargaz@freemail.hu>
[mono.git] / mcs / class / ByteFX.Data / Common / DBParametersEditor.cs
1 // ByteFX.Data data access components for .Net\r
2 // Copyright (C) 2002-2003  ByteFX, Inc.\r
3 //\r
4 // This library is free software; you can redistribute it and/or\r
5 // modify it under the terms of the GNU Lesser General Public\r
6 // License as published by the Free Software Foundation; either\r
7 // version 2.1 of the License, or (at your option) any later version.\r
8 // \r
9 // This library is distributed in the hope that it will be useful,\r
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of\r
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU\r
12 // Lesser General Public License for more details.\r
13 // \r
14 // You should have received a copy of the GNU Lesser General Public\r
15 // License along with this library; if not, write to the Free Software\r
16 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\r
17 \r
18 using System;\r
19 using System.ComponentModel.Design;\r
20 using ByteFX.Data.MySqlClient;\r
21 \r
22 namespace ByteFX.Data.Common\r
23 {\r
24         /// <summary>\r
25         /// Summary description for DBParametersEditor.\r
26         /// </summary>\r
27         internal class DBParametersEditor : CollectionEditor\r
28         {\r
29                 public DBParametersEditor(Type t) : base(t)\r
30                 {\r
31                 }\r
32 \r
33                 protected override object CreateInstance(Type itemType)\r
34                 {\r
35                         object[] items = base.GetItems(null);\r
36 \r
37                         int i = 1;\r
38                         while (true) \r
39                         {\r
40                                 bool found = false;\r
41                                 foreach (object obj in items) \r
42                                 {\r
43                                         MySqlParameter p = (MySqlParameter)obj;\r
44                                         if (p.ParameterName.Equals( "parameter" + i )) \r
45                                         {\r
46                                                 found = true;\r
47                                                 break;\r
48                                         }\r
49                                 }\r
50                                 if (! found) break;\r
51                                 i ++;\r
52                         }\r
53 \r
54                         MySqlParameter parm = new MySqlParameter("parameter"+i, MySqlDbType.VarChar);\r
55                         return parm;\r
56                 }\r
57 \r
58         }\r
59 }\r