문제

나는 Rhino ETL 라이브러리와 함께 놀았으며 실제로 진행되는 방향을 좋아합니다. 그러나 나는 그것에 대한 나쁜 부분이 문서화가 드물다는 것임을 발견했으며 이러한 파이프 라인 프로세스를 만드는 방법과 특히 DSL을 사용하는 방법에 대한 충분한 정보가없는 것 같습니다.

파일을로드하고 데이터를 다른 파일로 내보내기 위해 DSL 파일을 작성하려고 시도하고 있습니다. 내가 지금까지 가지고있는 것은 이것입니다.

[DelimitedRecord("\t")]
class User:
  public Name as string
  public Phone as string
  public Email as string

operation import_file:
  file = Rhino.Etl.Core.Files.FluentFile(typeof(User)).From("""E:\Fake\Book1.txt""")
  for row in file:
    yield Row.FromObject(row)

operation export_file:
  file = Rhino.Etl.Core.Files.FluentFile(typeof(User)).To("""E:\Fake\Test.txt""")
  for row in rows:
    record = User(Name: row["Name"])
    file.Write(record)

process ImportFile:
  import_file()
  export_file()

이 예외가 발생합니다

file.boo (1,2) : bce0064 : boo.lang.compiler.compilererRor : 'DelimitedRecord'또는 'DelimitedRecordAttribute'라는 이름이없는 속성이 없습니다 (속성 이름은 CASE 이름이 무의미합니다). 'System.diagnostics.delimitedListTracelistener'를 의미 했습니까?

속성 부분을 제거하면이 오류가 발생합니다.

예외 : 파이프 라인을 만들지 못했습니다. importFile : 클래스 사용자는 [DelimitedRecord] 또는 [FixedLengthrecord] 속성으로 표시되어야합니다. 예외 : 작업 파일을 실행하지 못했습니다. import_file : 클래스 사용자는 [DelimitedRecord] 또는 [FixedLengthrecord] 속성으로 표시되어야합니다.

여기에 아이디어가 있습니까? 아니면 Rhino ETL의 DSL 내에서 FluentFile을 사용하는 방법에 대한 예가 있습니까?

도움이 되었습니까?

해결책

그만큼 DelimitedRecordattribute파일 헬퍼 어셈블리, 파일 헬퍼 네임 스페이스.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top