, у меня есть CompileAssemblyFromSource, работающий с кодом, который ссылается только на сборки, которые использует моя программа (которая ее компилирует). Он прекрасно работает.
Однако, если я необходимо скомпилировать код, который имеет оператор «using blah;», он не сможет найти blah и сказать, что ему не хватает ресурса.
Итак, если это «System.Windows.Forms», и я говорю « compilerparams.ReferencedAssemblies.Add ("System.Windows.Forms.dll") ", он работает.
Итак, я могу проанализировать файл кода и получить все параметры" использования ", но откуда мне знать, что они должны быть добавленным "* .dll", или они являются пространствами имен где-то еще или еще что-то? Есть ли способ для .NET взять "System.Windows.Forms" и выплюнуть "System.Windows.Forms.dll", потому что это то, что он потребности и так далее?