아래는 개체 및 .txt 파일의 예제 클래스입니다. 저는 filehelpers를 사용하여이 클래스를 만든 다음 FileHelpers를 사용하여 .txt 파일을 읽고이 파일을 이러한 개체로 변환하고 목록에 넣습니다.
.txt 파일 :
1122233
4455566
예제 클래스 :
[FixedLengthRecord(FixedMode.AllowLessChars)]
public class Example
{
[FieldFixedLength(2)]
public string first;
[FieldFixedLength(3)]
public string second;
[FieldFixedLength(2)]
public string third;
}
filehelpers로 이것을 읽으면 Example.The 첫 번째 Example.first 값이 '11'등의 2 개 개체가 제공됩니다. List를 DataTable로 변환하고 SqlBulkCopy를 사용하여이 데이터를 데이터베이스에 푸시합니다. 이 모든 것이 잘됩니다.
데이터베이스의 테이블에는 열 이름이있는 3 개의 열 (varchar) 만 포함됩니다. 첫째, 둘째, 셋째.
문제는 데이터베이스에서 데이터를 다시 가져 와서 목록에 다시 매핑하려고 할 때 발생합니다. 다음 코드를 사용합니다 (Dapper 사용).
IDbConnection connection = new SqlConnection(connectionString);
var rows = connection.Query<Example>("select * from examplesTable");
foreach (Example e in rows)
{
examples.Add(e); //List<Example> examples
}
이것은 올바른 양의 행을 반환하지만 개체에서 데이터를 가져 오려고하면 null 데이터가 포함됩니다. 내가 뭘 잘못하고 있는지 알아낼 수 없습니다.
SQL 대량 삽입 전에 데이터가 올바르게로드되었는지 확인한 다음 대량 삽입에서 오류가 발생하지 않는지 확인합니다.
SQL Management Studio의 테이블에 올바른 데이터가 있습니까?
데이터 테이블로 읽는 올바른 데이터가있는 경우 특정 유형이 아닌 개체 값이 될 것이므로 다시 가져 오는 데이터를 확인합니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다