次の方法で共有


DataColumnCollection.CanRemove メソッド

指定した列をコレクションから削除できるかどうかを確認します。

Public Function CanRemove( _
   ByVal column As DataColumn _) As Boolean
[C#]
public bool CanRemove(DataColumncolumn);
[C++]
public: bool CanRemove(DataColumn* column);
[JScript]
public function CanRemove(
   column : DataColumn) : Boolean;

パラメータ

戻り値

列を削除できる場合は true 。それ以外の場合は false

例外

例外の種類 条件
ArgumentNullException column パラメータが null 参照 (Visual Basic では Nothing) です。
ArgumentException この列はこのコレクションに属していません。

または

この列はリレーションシップの一部です。

または

他の列の式がこの列に依存します。

解説

CanRemove メソッドは、 true または false の結果を返す前に、この列が存在するかどうか、この列がテーブルに属しているかどうか、この列に制約またはリレーションシップが設定されているかどうか、などを確認します。

コレクションから列を削除する前に、 CanRemove メソッドを使用します。列を削除しようとする前に、 Contains メソッドを使用して、この列が存在するかどうかを確認できます。

使用例

[Visual Basic, C#, C++] 最初に Contains メソッドを使用して、特定の列がコレクション内にあるかどうかを判断する例を次に示します。コレクション内にこの列が存在する場合は、 CanRemove メソッドで、この列を削除できるかどうかが確認されます。削除できる場合は、 Remove メソッドで列が削除されます。

 
Private Sub RemoveColumn(colName As String, table As DataTable)
    Dim cols As DataColumnCollection = table.Columns
 
    If cols.Contains(colName) Then 

       If cols.CanRemove(cols(colName)) Then cols.Remove(colName)

    End If
 End Sub

[C#] 
private void RemoveColumn(string colName, DataTable table)
{
    DataColumnCollection cols = table.Columns;
 
    if (cols.Contains(colName))
       if (cols.CanRemove(cols[colName]))
           cols.Remove(colName);
}

[C++] 
private:
void RemoveColumn(String* colName, DataTable* table)
{
    DataColumnCollection* cols = table->Columns;
 
    if (cols->Contains(colName))
       if (cols->CanRemove(cols->Item[colName]))
           cols->Remove(colName);
}

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET

参照

DataColumnCollection クラス | DataColumnCollection メンバ | System.Data 名前空間 | Contains | Remove