Frage

Ich habe mit der Rhino-ETL-Bibliothek herum spielen und wirklich wie die Richtung, dass es geht. Ich habe jedoch festgestellt, dass die schlechte daran ist, die Dokumentation ist spärlich und es scheint nicht gut genug Informationen zu sein, wie diese Pipeline Prozesse zu schaffen und vor allem mit dem DSL.

Ich versuche, nur eine DSL-Datei zu erstellen, eine Datei und exportieren Sie die Daten in einer anderen Datei zu laden, um zu sehen, wie das alles zusammen passen. Was ich bisher habe, ist dies.

[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()

Es wirft diese Ausnahme

File.boo (1,2): BCE0064: Boo.Lang.Compiler.CompilerError: Kein Attribut mit dem Namen 'DelimitedRecord' oder 'DelimitedRecordAttribute' gefunden wurde (Attributnamen sind Groß- und Kleinschreibung). Meinen Sie 'System.Diagnostics.DelimitedListTraceListener'?

Wenn ich das Attribut Teil entfernen bekomme ich diesen Fehler

Ausnahme: Fehler bei Pipeline Importfile zu erstellen: Die Klasse Benutzer mit dem markiert werden müssen [DelimitedRecord] oder [FixedLengthRecord] Attribute. Ausnahme: Fehler Operation File.import_file auszuführen: Die Klasse Benutzer muss mit dem [DelimitedRecord] oder [FixedLengthRecord] Attribut markiert werden

.

Irgendwelche Ideen hier? Oder gibt es Beispiele dafür, wie die FluentFile für Rhino ETL innerhalb eines DSL zu benutzen?

War es hilfreich?

Lösung

Die DelimitedRecordAttribute ist in der FileHelpers Montage, FileHelpers Namespace.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top