从平面文件加载数据的通用实体
本质上我有两个不同的平面文件 Credit &具有不同记录结构的帐户。我已经为它们的页眉、详细信息和页脚记录以及整个文件创建了单独的实体。
文件帐户:
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 类到底应该是什么样子以及它与实际实体类有何关系。
希望我能清楚地回答这个问题。任何建议表示赞赏
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
最后这是我得到的通用结构。
我删除了帐户和信用平面文件实体,现在只有这两个实体的详细记录实体。
Finally this is the generic structure I got.
I removed the Account and Credit flatfile entities and now have only the detailrecord entities for those two.