2
기본적으로 두 개의 다른 플랫 파일이 있습니다. 크레딧 & 다른 레코드 구조를 가진 계정입니다. 헤더, 세부 사항 및 바닥 글 레코드와 전체 파일에 대해 별도의 엔티티를 작성했습니다.플랫 파일에서 데이터를로드하는 일반 엔터티
파일 계정 :
namespace Data.Entities
{
[FlatFileContainerRecord(RecordLength = 100)]
public class AccountFlatFile
{
public AccountHeader Header { get; set; }
public List<Data.Entities.AccountDetail> Details { get; set; }
public AccountFooter Control { get; set; }
public AccountFlatFile()
{
Details = new List<AccountDetail>();
}
파일 신용 :
namespace Data.Entities
{
[FlatFileContainerRecord(RecordLength = 90)]
public class CreditFlatFile
{
public CreditHeader Header { get; set; }
public List<Data.Entities.CreditDetail> Details { get; set; }
public CreditFooter Control { get; set; }
public CreditFlatFile()
{
Details = new List<CreditDetail>();
}
}
나는 파일을 실행하는 일반적인 작업을 만들었습니다. 이것은 내가 붙어있는 곳이다.
foreach (string file in incomingFile)
{
GenericFile<T> genericFile = new GenericFile<T>();
using (Stream stream = File.OpenRead(file))
{
**genericFile = serializer.Deserialize<GenericFile<T>>(stream);**
}
if (genericFile.Details.Count > 0)
{
System.Threading.Tasks.Parallel.For(0, genericFile.Details.Count, parallelOptions, index =>
{
Repo.Upsert(genericFile.Details[index]);
});
}
else
{
//log error
}
}
GenericFile 클래스의 모양과 실제 엔티티 클래스와의 관계를 잘 모르겠습니다.
희망과 함께 나는 분명하다. 어떤 제안이라도 환영받습니다
이 질문은 매우 불분명합니다. 나는 문제가 무엇인지, 또는 우리가하고 싶은/뭘 원하는지 잘 모르겠습니다. –
GenericFile 클래스를 어떻게 정의해야하는지 알고 싶습니다. –
Netswannabe
나는 그것을 놓치고 있을지 모르지만 그 클래스가하고 싶은 행동에 대해 많이 이야기하는 곳을 볼 수는 없다. 그래서 우리는 어떻게 알 수 있을까? –