diff --git a/docs/source/Compiler.md b/docs/source/Compiler.md
index 3ff89edc3c95932105613957db1a40c7807b8843..957baa5bbc2667062194b8bd0e0287d482ccd006 100755
--- a/docs/source/Compiler.md
+++ b/docs/source/Compiler.md
@@ -57,6 +57,8 @@ be generated for each file processed:
 -   `--gen-mutable` : Generate additional non-const accessors for mutating
     FlatBuffers in-place.
 
+-   `--gen-onefile` :  Generate single output file (useful for C#)
+
 -   `--raw-binary` : Allow binaries without a file_indentifier to be read.
     This may crash flatc given a mismatched schema.
 
diff --git a/src/flatc.cpp b/src/flatc.cpp
index a332a53e6ce22ae374e038a470296451b7f2f337..87f0c72bf5e12df3022dcff051d004dc66200fcd 100755
--- a/src/flatc.cpp
+++ b/src/flatc.cpp
@@ -141,9 +141,9 @@ int main(int argc, const char *argv[]) {
         opts.mutable_buffer = true;
       } else if(arg == "--gen-includes") {
         opts.include_dependence_headers = true;
-      }else if (arg == "--gen-onefile") {
+      } else if (arg == "--gen-onefile") {
         opts.one_file = true;
-      }else if (arg == "--raw-binary") {
+      } else if (arg == "--raw-binary") {
         raw_binary = true;
       } else if(arg == "--") {  // Separator between text and binary inputs.
         binary_files_from = filenames.size();
diff --git a/src/idl_gen_general.cpp b/src/idl_gen_general.cpp
index 268de64f36f8cde9e3cde9559250c1143891b71c..00c50fe85b18a3a7e9efdd58a341f4248e5062dc 100644
--- a/src/idl_gen_general.cpp
+++ b/src/idl_gen_general.cpp
@@ -901,7 +901,7 @@ bool GenerateGeneral(const Parser &parser,
     std::string enumcode;
     GenEnum(lang, **it, &enumcode);
     if (opts.one_file) {
-      one_file_code = enumcode;
+      one_file_code += enumcode;
     }
     else {
       if (!SaveClass(lang, parser, (**it).name, enumcode, path, false, false))