DataTableExtensions.CopyToDataTable 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
지정된 입력 DataTable 개체를 사용하여 DataRow 개체의 복사본이 들어 있는 IEnumerable<T>을 반환합니다.
오버로드
CopyToDataTable<T>(IEnumerable<T>) |
제네릭 매개 변수 |
CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption) |
제네릭 매개 변수 |
CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption, FillErrorEventHandler) |
제네릭 매개 변수 |
CopyToDataTable<T>(IEnumerable<T>)
- Source:
- DataTableExtensions.cs
- Source:
- DataTableExtensions.cs
- Source:
- DataTableExtensions.cs
제네릭 매개 변수 T
가 DataTable인 지정된 입력 DataRow 개체를 사용하여 IEnumerable<T> 개체의 복사본이 들어 있는 DataRow을 반환합니다.
public:
generic <typename T>
where T : System::Data::DataRow[System::Runtime::CompilerServices::Extension]
static System::Data::DataTable ^ CopyToDataTable(System::Collections::Generic::IEnumerable<T> ^ source);
public static System.Data.DataTable CopyToDataTable<T> (this System.Collections.Generic.IEnumerable<T> source) where T : System.Data.DataRow;
static member CopyToDataTable : seq<'T (requires 'T :> System.Data.DataRow)> -> System.Data.DataTable (requires 'T :> System.Data.DataRow)
<Extension()>
Public Function CopyToDataTable(Of T As DataRow) (source As IEnumerable(Of T)) As DataTable
형식 매개 변수
- T
소스 시퀀스의 개체 형식(일반적으로 DataRow)입니다.
매개 변수
- source
- IEnumerable<T>
소스 IEnumerable<T> 시퀀스입니다.
반환
DataTable 개체 형식의 입력 시퀀스가 들어 있는 DataRow입니다.
예외
소스 IEnumerable<T> 시퀀스가 null
이고 새 테이블을 만들 수 없는 경우
예제
다음 예제에서는 SalesOrderHeader 테이블에서 2001년 8월 8일 이후의 주문을 쿼리하고 메서드를 CopyToDataTable 사용하여 해당 쿼리에서 를 DataTable 만듭니다. 그런 다음, DataTable은 DataGridView에 대한 프록시 역할을 하는 BindingSource에 바인딩됩니다.
// Bind the System.Windows.Forms.DataGridView object
// to the System.Windows.Forms.BindingSource object.
dataGridView.DataSource = bindingSource;
// Fill the DataSet.
DataSet ds = new DataSet();
ds.Locale = CultureInfo.InvariantCulture;
FillDataSet(ds);
DataTable orders = ds.Tables["SalesOrderHeader"];
// Query the SalesOrderHeader table for orders placed
// after August 8, 2001.
IEnumerable<DataRow> query =
from order in orders.AsEnumerable()
where order.Field<DateTime>("OrderDate") > new DateTime(2001, 8, 1)
select order;
// Create a table from the query.
DataTable boundTable = query.CopyToDataTable<DataRow>();
// Bind the table to a System.Windows.Forms.BindingSource object,
// which acts as a proxy for a System.Windows.Forms.DataGridView object.
bindingSource.DataSource = boundTable;
' Bind the System.Windows.Forms.DataGridView object
' to the System.Windows.Forms.BindingSource object.
dataGridView.DataSource = bindingSource
' Fill the DataSet.
Dim ds As New DataSet()
ds.Locale = CultureInfo.InvariantCulture
' See the FillDataSet method in the Loading Data Into a DataSet topic.
FillDataSet(ds)
Dim orders As DataTable = ds.Tables("SalesOrderHeader")
' Query the SalesOrderHeader table for orders placed
' after August 8, 2001.
Dim query = _
From order In orders.AsEnumerable() _
Where order.Field(Of DateTime)("OrderDate") > New DateTime(2001, 8, 1) _
Select order
' Create a table from the query.
Dim boundTable As DataTable = query.CopyToDataTable()
' Bind the table to a System.Windows.Forms.BindingSource object,
' which acts as a proxy for a System.Windows.Forms.DataGridView object.
bindingSource.DataSource = boundTable
설명
입력 매개 변수의 매개 변수 T
source
는 형식 DataRow 이거나 에서 DataRow파생된 형식일 수 있습니다.
입력 시퀀스는 에 대한 쿼리 또는 쿼리뿐만 아니라 모든 IEnumerable<T> 원본일 수 있습니다 DataTable. 원본 시퀀스가 쿼리인 경우 이 연산자를 호출하면 즉시 실행됩니다. 소스 시퀀스를 열거하면 예외가 throw될 수도 있습니다.
대상 테이블의 스키마는 원본 시퀀스에서 첫 번째 DataRow 행의 스키마를 기반으로 합니다. 테이블 메타데이터는 의 열 값에서 DataRow 메타데이터 및 테이블 값 DataRow에서 추출됩니다. 형식화된 DataTable의 경우 형식이 유지되지 않습니다. 데이터와 스키마가 전송되지만 출력 테이블의 결과 행은 형식화된 DataRow 형식이 아닙니다. RowState 및 RowError 속성은 원본 DataRow 에서 반환DataTable된 로 복사하는 동안 유지되지 않습니다.
null 값이 null인 null 참조 또는 nullable 형식이 원본 DataRow에 있으면 이 메서드는 대상 DataTable 의 값을 값 Value으로 바꿉니다.
메서드에서 반환된 생성된 테이블에는 기본 테이블 이름이 있습니다. 이름을 로 DataTable지정하거나 에 연결 DataSet하거나 다른 DataTable 특정 작업을 수행하려면 테이블을 만들고 반환한 후에 수행해야 합니다.
자세한 내용은 쿼리에서 DataTable 만들기를 참조하세요.
적용 대상
CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption)
- Source:
- DataTableExtensions.cs
- Source:
- DataTableExtensions.cs
- Source:
- DataTableExtensions.cs
제네릭 매개 변수 T
가 DataRow인 지정된 입력 DataTable 개체를 사용하여 IEnumerable<T> 개체를 지정된 DataRow에 복사합니다.
public:
generic <typename T>
where T : System::Data::DataRow[System::Runtime::CompilerServices::Extension]
static void CopyToDataTable(System::Collections::Generic::IEnumerable<T> ^ source, System::Data::DataTable ^ table, System::Data::LoadOption options);
public static void CopyToDataTable<T> (this System.Collections.Generic.IEnumerable<T> source, System.Data.DataTable table, System.Data.LoadOption options) where T : System.Data.DataRow;
static member CopyToDataTable : seq<'T (requires 'T :> System.Data.DataRow)> * System.Data.DataTable * System.Data.LoadOption -> unit (requires 'T :> System.Data.DataRow)
<Extension()>
Public Sub CopyToDataTable(Of T As DataRow) (source As IEnumerable(Of T), table As DataTable, options As LoadOption)
형식 매개 변수
- T
소스 시퀀스의 개체 형식(일반적으로 DataRow)입니다.
매개 변수
- source
- IEnumerable<T>
소스 IEnumerable<T> 시퀀스입니다.
- options
- LoadOption
LoadOption 로드 옵션을 지정하는 DataTable 열거형입니다.
예외
소스 IEnumerable<T> 시퀀스가 null
이거나 대상 DataTable이 null
인 경우
설명
입력 매개 변수의 매개 변수 T
source
는 형식 DataRow이거나 에서 DataRow파생된 형식일 수 있습니다.
입력 시퀀스는 에 대한 DataTable쿼리뿐만 아니라 모든 IEnumerable<T> 원본일 수 있습니다. 원본 시퀀스가 쿼리인 경우 이 연산자를 호출하면 즉시 실행됩니다. 소스 시퀀스를 열거하면 예외가 throw될 수도 있습니다.
대상 테이블의 스키마는 원본 시퀀스에서 첫 번째 DataRow 행의 스키마를 기반으로 합니다. 테이블 메타데이터는 의 열 값에서 DataRow 메타데이터 및 테이블 값 DataRow에서 추출됩니다. 형식화된 DataTable의 경우 형식이 유지되지 않습니다. 데이터와 스키마가 전송되지만 출력 테이블의 결과 행은 형식화된 DataRow 형식이 아닙니다. RowState 및 RowError 속성은 원본 DataRow 에서 반환DataTable된 로 복사하는 동안 유지되지 않습니다.
null 값이 null인 null 참조 또는 nullable 형식이 원본 DataRow에 있으면 이 메서드는 대상 DataTable 의 값을 값 Value으로 바꿉니다.
메서드에서 반환된 생성된 테이블에는 기본 테이블 이름이 있습니다. 이름을 로 DataTable지정하거나 에 연결 DataSet하거나 다른 DataTable 특정 작업을 수행하려면 테이블을 만들고 반환한 후에 수행해야 합니다.
자세한 내용은 쿼리에서 DataTable 만들기를 참조하세요.
적용 대상
CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption, FillErrorEventHandler)
- Source:
- DataTableExtensions.cs
- Source:
- DataTableExtensions.cs
- Source:
- DataTableExtensions.cs
제네릭 매개 변수 T
가 DataRow인 지정된 입력 DataTable 개체를 사용하여 IEnumerable<T> 개체를 지정된 DataRow에 복사합니다.
public:
generic <typename T>
where T : System::Data::DataRow[System::Runtime::CompilerServices::Extension]
static void CopyToDataTable(System::Collections::Generic::IEnumerable<T> ^ source, System::Data::DataTable ^ table, System::Data::LoadOption options, System::Data::FillErrorEventHandler ^ errorHandler);
public static void CopyToDataTable<T> (this System.Collections.Generic.IEnumerable<T> source, System.Data.DataTable table, System.Data.LoadOption options, System.Data.FillErrorEventHandler errorHandler) where T : System.Data.DataRow;
public static void CopyToDataTable<T> (this System.Collections.Generic.IEnumerable<T> source, System.Data.DataTable table, System.Data.LoadOption options, System.Data.FillErrorEventHandler? errorHandler) where T : System.Data.DataRow;
static member CopyToDataTable : seq<'T (requires 'T :> System.Data.DataRow)> * System.Data.DataTable * System.Data.LoadOption * System.Data.FillErrorEventHandler -> unit (requires 'T :> System.Data.DataRow)
<Extension()>
Public Sub CopyToDataTable(Of T As DataRow) (source As IEnumerable(Of T), table As DataTable, options As LoadOption, errorHandler As FillErrorEventHandler)
형식 매개 변수
- T
소스 시퀀스의 개체 형식(일반적으로 DataRow)입니다.
매개 변수
- source
- IEnumerable<T>
소스 IEnumerable<T> 시퀀스입니다.
- options
- LoadOption
LoadOption 로드 옵션을 지정하는 DataTable 열거형입니다.
- errorHandler
- FillErrorEventHandler
오류를 처리할 메서드를 나타내는 FillErrorEventHandler 대리자입니다.
예외
소스 IEnumerable<T> 시퀀스가 null
이거나 대상 DataTable이 null
인 경우
설명
입력 매개 변수의 매개 변수 T
source
는 형식 DataRow이거나 에서 DataRow파생된 형식일 수 있습니다.
입력 시퀀스는 에 대한 DataTable쿼리뿐만 아니라 모든 IEnumerable<T> 원본일 수 있습니다. 원본 시퀀스가 쿼리인 경우 이 연산자를 호출하면 즉시 실행됩니다. 소스 시퀀스를 열거하면 예외가 throw될 수도 있습니다.
대상 테이블의 스키마는 원본 시퀀스에서 첫 번째 DataRow 행의 스키마를 기반으로 합니다. 테이블 메타데이터는 의 열 값에서 DataRow 메타데이터 및 테이블 값 DataRow에서 추출됩니다. 형식화된 DataTable의 경우 형식이 유지되지 않습니다. 데이터와 스키마가 전송되지만 출력 테이블의 결과 행은 형식화된 DataRow 형식이 아닙니다. RowState 및 RowError 속성은 원본 DataRow 에서 반환DataTable된 로 복사하는 동안 유지되지 않습니다.
null 값이 null인 null 참조 또는 nullable 형식이 원본 DataRow에 있으면 이 메서드는 대상 DataTable 의 값을 값 Value으로 바꿉니다.
메서드에서 반환된 생성된 테이블에는 기본 테이블 이름이 있습니다. 이름을 로 DataTable지정하거나 에 연결 DataSet하거나 다른 DataTable 특정 작업을 수행하려면 테이블을 만들고 반환한 후에 수행해야 합니다.
데이터 행을 대상 테이블에 복사하는 동안 제약 조건 예외와 같은 예외가 throw되면 대리자를 errorHandler
호출합니다. FillErrorEventArgs 은 다음 값을 사용하여 대리자 errorHandler
에게 전달됩니다.
Continue 대리자 호출이 반환된 후 속성이 읽혀집니다. 속성이 인 Continuetrue
경우 원본 시퀀스는 계속해서 열거되고 데이터 테이블에 로드됩니다. 속성이 이 Continuefalse
면 원래 예외가 메서드에서 CopyToDataTable throw됩니다.
자세한 내용은 쿼리에서 DataTable 만들기를 참조하세요.
적용 대상
.NET