title: Write to String using the FixedLengthClassBuilder
body: <p>I have a c# class called "SepaRecord", already defined in a dll which I cannot modify.
  I have a List at runtime which I need to convert into a fixed length file.</p>
  
  <p>The approach which I have tried is, using the FixedLengthClassBuilder I create a runtime definition of the record, as below:</p>
  
  <pre><code>FixedLengthClassBuilder fileRecordBuilder = new FixedLengthClassBuilder("SepaRecord");
  fileRecordBuilder.AddField("RecordCode", 2, typeof(string));
  fileRecordBuilder.AddField("CurrencyCode", 3, typeof(string));
  fileRecordBuilder.AddField("CreditAmount", 15, typeof(int));
  // other fields follow....
  </code></pre>
  
  <p>RecordCode, CurrencyCode, CreditAmount, etc are fields defined the "SepaRecord" class in the DLL. </p>
  
  <p>I would expect that if I pass the list to the FileHelperEngine, I would get back a delimited string: </p>
  
  <pre><code>List&lt;SepaRecord&gt; lst = this.goGetMyList();
  string ret = this.FileHelperEngine.WriteString(lst);
  </code></pre>
  
  <p>But of course it did not work since the FixedLengthClassBuilder builts and compiles a type/class at runtime and compares it with the class/type of the argument.</p>
  
  <p>Question is: Is there a better approach to do what I am trying to do?<br>
  And a suggestion: Why bother with type checks?  Just compare on the field level.  I think this would make the runtime engine more flexible.</p>
  
  <p>Appreciate any help
  Chris</p>