1 // Licensed to the .NET Foundation under one or more agreements.
2 // The .NET Foundation licenses this file to you under the MIT license.
3 // See the LICENSE file in the project root for more information.
4 
5 
6 
7 //------------------------------------------------------------------------------
8 
9 using System.Data.Common;
10 
11 namespace System.Data.SqlClient
12 {
13     public sealed partial class SqlParameterCollection : DbParameterCollection
14     {
15         private bool _isDirty;
16         private static Type s_itemType = typeof(SqlParameter);
17 
SqlParameterCollection()18         internal SqlParameterCollection() : base()
19         {
20         }
21 
22         internal bool IsDirty
23         {
24             get
25             {
26                 return _isDirty;
27             }
28             set
29             {
30                 _isDirty = value;
31             }
32         }
33 
34         new public SqlParameter this[int index]
35         {
36             get
37             {
38                 return (SqlParameter)GetParameter(index);
39             }
40             set
41             {
42                 SetParameter(index, value);
43             }
44         }
45 
46         new public SqlParameter this[string parameterName]
47         {
48             get
49             {
50                 return (SqlParameter)GetParameter(parameterName);
51             }
52             set
53             {
54                 SetParameter(parameterName, value);
55             }
56         }
57 
Add(SqlParameter value)58         public SqlParameter Add(SqlParameter value)
59         {
60             Add((object)value);
61             return value;
62         }
63 
AddWithValue(string parameterName, object value)64         public SqlParameter AddWithValue(string parameterName, object value)
65         { // 79027
66             return Add(new SqlParameter(parameterName, value));
67         }
68 
Add(string parameterName, SqlDbType sqlDbType)69         public SqlParameter Add(string parameterName, SqlDbType sqlDbType)
70         {
71             return Add(new SqlParameter(parameterName, sqlDbType));
72         }
73 
Add(string parameterName, SqlDbType sqlDbType, int size)74         public SqlParameter Add(string parameterName, SqlDbType sqlDbType, int size)
75         {
76             return Add(new SqlParameter(parameterName, sqlDbType, size));
77         }
78 
Add(string parameterName, SqlDbType sqlDbType, int size, string sourceColumn)79         public SqlParameter Add(string parameterName, SqlDbType sqlDbType, int size, string sourceColumn)
80         {
81             return Add(new SqlParameter(parameterName, sqlDbType, size, sourceColumn));
82         }
83 
AddRange(SqlParameter[] values)84         public void AddRange(SqlParameter[] values)
85         {
86             AddRange((Array)values);
87         }
88 
Contains(string value)89         override public bool Contains(string value)
90         { // WebData 97349
91             return (-1 != IndexOf(value));
92         }
93 
Contains(SqlParameter value)94         public bool Contains(SqlParameter value)
95         {
96             return (-1 != IndexOf(value));
97         }
98 
CopyTo(SqlParameter[] array, int index)99         public void CopyTo(SqlParameter[] array, int index)
100         {
101             CopyTo((Array)array, index);
102         }
103 
IndexOf(SqlParameter value)104         public int IndexOf(SqlParameter value)
105         {
106             return IndexOf((object)value);
107         }
108 
Insert(int index, SqlParameter value)109         public void Insert(int index, SqlParameter value)
110         {
111             Insert(index, (object)value);
112         }
113 
OnChange()114         private void OnChange()
115         {
116             IsDirty = true;
117         }
118 
Remove(SqlParameter value)119         public void Remove(SqlParameter value)
120         {
121             Remove((object)value);
122         }
123     }
124 }
125