Можно ли настроить компилятор .net4 из приложения .net3.5 с помощью CSharpCodeProvider? - PullRequest
6 голосов
/ 26 декабря 2011

Я пытаюсь скомпилировать файл .cs с помощью CSharpCodeProvider из приложения .net 3.5, и я хочу настроить таргетинг на компилятор .net4, но получаю эту ошибку «Не удается найти исполняемый файл компилятора csc.exe». У меня установлен .net4. Ниже приведен код, который я использую с некоторыми строками, опущенными для краткости. Когда я устанавливаю CompilerVersion на «v3.5», я не получаю ошибок.

CompilerResults results = null;
using (CSharpCodeProvider provider = new CSharpCodeProvider(new Dictionary<string, string>() {{"CompilerVersion", "v4.0"},}))
{
    CompilerParameters options = new CompilerParameters(); 
    ...
    results = provider.CompileAssemblyFromFile(options, Directory.GetFiles(path, "*.cs", SearchOption.AllDirectories));
}

1 Ответ

4 голосов
/ 26 декабря 2011

Я думаю, вы можете форсировать использование csc v3.5 из .NET 4.0.

Но не наоборот.

(могу ошибаться).

...