SqlParameterCollection.Remove 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
從集合移除指定的 SqlParameter。
多載
Remove(SqlParameter) |
從集合移除指定的 SqlParameter。 |
Remove(Object) |
從集合移除指定的 SqlParameter。 |
Remove(SqlParameter)
從集合移除指定的 SqlParameter。
public:
void Remove(System::Data::SqlClient::SqlParameter ^ value);
public void Remove (System.Data.SqlClient.SqlParameter value);
override this.Remove : System.Data.SqlClient.SqlParameter -> unit
Public Sub Remove (value As SqlParameter)
參數
- value
- SqlParameter
要從集合移除的 SqlParameter 物件。
例外狀況
參數不存在於集合中。
範例
下列範例會搜尋 SqlParameter 集合中的 SqlParameterCollection 物件。 如果參數存在,則範例會移除它。 這個範例假設 SqlParameterCollection 集合已經由 SqlCommand建立。
public void SearchSqlParams()
{
// ...
// create SqlCommand command and SqlParameter param
// ...
if (command.Parameters.Contains(param))
command.Parameters.Remove(param);
}
Public Sub SearchSqlParams()
' ...
' create SqlCommand command and SqlParameter param
' ...
If command.Parameters.Contains(param) Then
command.Parameters.Remove(param)
End If
End Sub
另請參閱
- 命令和參數 (ADO.NET)
- DataAdapter 的參數 (ADO.NET)
- 使用 .NET Framework Data Provider for SQL Server
- ADO.NET 概觀 \(部分機器翻譯\)
適用於
Remove(Object)
從集合移除指定的 SqlParameter。
public:
override void Remove(System::Object ^ value);
public:
virtual void Remove(System::Object ^ value);
public override void Remove (object value);
public void Remove (object value);
override this.Remove : obj -> unit
abstract member Remove : obj -> unit
override this.Remove : obj -> unit
Public Overrides Sub Remove (value As Object)
Public Sub Remove (value As Object)
參數
- value
- Object
要從集合中移除的物件。
實作
範例
下列範例示範介面的實作 IList ,以建立簡單的固定大小清單。 此程式代碼是介面較大範例的 IList 一部分。
class SimpleList : IList
{
private object[] _contents = new object[8];
private int _count;
public SimpleList()
{
_count = 0;
}
// IList Members
public int Add(object value)
{
if (_count < _contents.Length)
{
_contents[_count] = value;
_count++;
return (_count - 1);
}
return -1;
}
public void Clear()
{
_count = 0;
}
public bool Contains(object value)
{
for (int i = 0; i < Count; i++)
{
if (_contents[i] == value)
{
return true;
}
}
return false;
}
public int IndexOf(object value)
{
for (int i = 0; i < Count; i++)
{
if (_contents[i] == value)
{
return i;
}
}
return -1;
}
public void Insert(int index, object value)
{
if ((_count + 1 <= _contents.Length) && (index < Count) && (index >= 0))
{
_count++;
for (int i = Count - 1; i > index; i--)
{
_contents[i] = _contents[i - 1];
}
_contents[index] = value;
}
}
public bool IsFixedSize
{
get
{
return true;
}
}
public bool IsReadOnly
{
get
{
return false;
}
}
public void Remove(object value)
{
RemoveAt(IndexOf(value));
}
public void RemoveAt(int index)
{
if ((index >= 0) && (index < Count))
{
for (int i = index; i < Count - 1; i++)
{
_contents[i] = _contents[i + 1];
}
_count--;
}
}
public object this[int index]
{
get
{
return _contents[index];
}
set
{
_contents[index] = value;
}
}
// ICollection members.
public void CopyTo(Array array, int index)
{
for (int i = 0; i < Count; i++)
{
array.SetValue(_contents[i], index++);
}
}
public int Count
{
get
{
return _count;
}
}
public bool IsSynchronized
{
get
{
return false;
}
}
// Return the current instance since the underlying store is not
// publicly available.
public object SyncRoot
{
get
{
return this;
}
}
// IEnumerable Members
public IEnumerator GetEnumerator()
{
// Refer to the IEnumerator documentation for an example of
// implementing an enumerator.
throw new NotImplementedException("The method or operation is not implemented.");
}
public void PrintContents()
{
Console.WriteLine($"List has a capacity of {_contents.Length} and currently has {_count} elements.");
Console.Write("List contents:");
for (int i = 0; i < Count; i++)
{
Console.Write($" {_contents[i]}");
}
Console.WriteLine();
}
}
Public Class SimpleList
Implements IList
Private _contents(7) As Object
Private _count As Integer
Public Sub New()
_count = 0
End Sub
' IList members.
Public Function Add(ByVal value As Object) As Integer Implements IList.Add
If _count < _contents.Length Then
_contents(_count) = value
_count += 1
Return _count - 1
End If
Return -1
End Function
Public Sub Clear() Implements IList.Clear
_count = 0
End Sub
Public Function Contains(ByVal value As Object) As Boolean Implements IList.Contains
For i As Integer = 0 To Count - 1
If _contents(i) = value Then Return True
Next
Return False
End Function
Public Function IndexOf(ByVal value As Object) As Integer Implements IList.IndexOf
For i As Integer = 0 To Count - 1
If _contents(i) = value Then Return i
Next
Return -1
End Function
Public Sub Insert(ByVal index As Integer, ByVal value As Object) Implements IList.Insert
If _count + 1 <= _contents.Length AndAlso index < Count AndAlso index >= 0 Then
_count += 1
For i As Integer = Count - 1 To index Step -1
_contents(i) = _contents(i - 1)
Next
_contents(index) = value
End If
End Sub
Public ReadOnly Property IsFixedSize() As Boolean Implements IList.IsFixedSize
Get
Return True
End Get
End Property
Public ReadOnly Property IsReadOnly() As Boolean Implements IList.IsReadOnly
Get
Return False
End Get
End Property
Public Sub Remove(ByVal value As Object) Implements IList.Remove
RemoveAt(IndexOf(value))
End Sub
Public Sub RemoveAt(ByVal index As Integer) Implements IList.RemoveAt
if index >= 0 AndAlso index < Count Then
for i As Integer = index To Count - 2
_contents(i) = _contents(i + 1)
Next
_count -= 1
End If
End Sub
Public Property Item(ByVal index As Integer) As Object Implements IList.Item
Get
Return _contents(index)
End Get
Set(ByVal value As Object)
_contents(index) = value
End Set
End Property
' ICollection members.
Public Sub CopyTo(ByVal array As Array, ByVal index As Integer) Implements ICollection.CopyTo
For i As Integer = 0 To Count - 1
array.SetValue(_contents(i), index)
index += 1
Next
End Sub
Public ReadOnly Property Count() As Integer Implements ICollection.Count
Get
Return _count
End Get
End Property
Public ReadOnly Property IsSynchronized() As Boolean Implements ICollection.IsSynchronized
Get
Return False
End Get
End Property
' Return the current instance since the underlying store is not
' publicly available.
Public ReadOnly Property SyncRoot() As Object Implements ICollection.SyncRoot
Get
Return Me
End Get
End Property
' IEnumerable members.
Public Function GetEnumerator() As IEnumerator Implements IEnumerable.GetEnumerator
' Refer to the IEnumerator documentation for an example of
' implementing an enumerator.
Throw New NotImplementedException("The method or operation is not implemented.")
End Function
Public Sub PrintContents()
Console.WriteLine($"List has a capacity of {_contents.Length} and currently has {_count} elements.")
Console.Write("List contents:")
For i As Integer = 0 To Count - 1
Console.Write($" {_contents(i)}")
Next
Console.WriteLine()
End Sub
End Class
備註
這個成員是明確介面成員實作, 只有在 SqlParameterCollection 執行個體轉換成 IList 介面時,才能使用這個成員。
在相鄰元素的集合中,例如清單,接在移除的元素之後的元素會向上移動以佔用空出的位置。 如果集合具有索引,則移動之項目的索引也會更新。 集合的項目若在概念上群組成 Bucket (例如雜湊資料表),則不適用這項行為。 如果在 value
中找不到 IList,IList 會保持不變,而且不會值回任何例外狀況。
另請參閱
- 命令和參數 (ADO.NET)
- DataAdapter 的參數 (ADO.NET)
- 使用 .NET Framework Data Provider for SQL Server
- ADO.NET 概觀 \(部分機器翻譯\)