Ошибка VBCodeProvider - ошибка BC2006: для опции 'r' требуется ': <file_list>' - PullRequest
1 голос
/ 09 марта 2010

Я пытаюсь использовать VBCodeProvider для динамической компиляции сборки. Проблема, с которой я сталкиваюсь, заключается в том, что мне нужно предоставить классу CompilerParameters список сборок, на которые есть ссылки.

Используемый код:

CompilerParameters parameters = new CompilerParameters();
parameters.ReferencedAssemblies.AddRange(AppDomain.CurrentDomain.GetAssemblies().Select(a => a.Location).ToArray());
parameters.GenerateExecutable = false;
parameters.GenerateInMemory = true;
parameters.IncludeDebugInformation = false;

CodeDomProvider provider = new Microsoft.VisualBasic.VBCodeProvider();

// Compile the assembly in memory.
CompilerResults results = provider.CompileAssemblyFromDom(parameters, compileUnit);

Проблема в том, что при запуске строки provider.CompileAssemblyFromDom выдается следующая ошибка:

vbc : Command line (0,0) : error BC2006: option 'r' requires':<file_list>'

Однако, если я использую CSharpCodeProvider

provider = new Microsoft.VisualBasic.CSharpCodeProvider();

все работает правильно.

Это известная ошибка в VBCodeProvider?

...