C# CSharpCodeProvider冻结我的mvc应用程序

C# CSharpCodeProvider冻结我的mvc应用程序,c#,csharpcodeprovider,C#,Csharpcodeprovider,我需要在运行时创建一些Dll文件。Dll正在生成,但mvc应用程序似乎在执行此代码后冻结。 在输出窗口中,我可以看到我的所有Dll都被卸载,然后它们都被加载。 我做错了什么 我的代码: using (CSharpCodeProvider codeProvider = new CSharpCodeProvider()) { CompilerParameters parameters = new CompilerParameters {

我需要在运行时创建一些Dll文件。Dll正在生成,但mvc应用程序似乎在执行此代码后冻结。 在输出窗口中,我可以看到我的所有Dll都被卸载,然后它们都被加载。 我做错了什么

我的代码:

using (CSharpCodeProvider codeProvider = new CSharpCodeProvider())
        {
            CompilerParameters parameters = new CompilerParameters
            {
                ReferencedAssemblies =
                {
                    string.Format("{0}\\{1}", binDirectory, "SomeDll.dll")
                },
                GenerateExecutable = false,
                OutputAssembly = string.Format("{0}\\{1}", binDirectory, assemblyName)
            };

            var files = Directory.GetFiles(dataDirectory, "*.cs"); //get all generated cs files 

            var result = codeProvider.CompileAssemblyFromFile(parameters, files); //this line causes the application to freeze

            codeProvider.Dispose(); //not sure if this is necessary

            if (result.Errors.HasErrors)
            {
                throw new Exception(result.Errors.ToString());
            }
        }
我的输出:

“iisexpress.exe”(CLR v4.0.30319: /LM/W3SVC/2/ROOT-1-131239474882606992):未加载 'C:\Windows\Microsoft.Net\assembly\GAC\U 32\System.Web\v4.0.0.0\UUU b03f5f7f11d50a3a\System.Web.dll'

“iisexpress.exe”(CLR v4.0.30319: /LM/W3SVC/2/ROOT-1-131239474882606992):未加载 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System\v4.0.0.0__b77a5c561934e089\System.dll'

“iisexpress.exe”(CLR v4.0.30319: /LM/W3SVC/2/ROOT-1-131239474882606992):未加载 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Core\v4.0.0.0_uuuB77A5C561934E089\System.Core.dll'

(等)

“iisexpress.exe”(CLR v4.0.30319: /LM/W3SVC/2/ROOT-2-131239471512101487):已加载 'C:\Windows\Microsoft.Net\assembly\GAC\U 32\System.Web\v4.0.0.0\UUU b03f5f7f11d50a3a\System.Web.dll'。 已跳过加载符号。模块已优化,调试器选项 “仅我的代码”已启用

“iisexpress.exe”(CLR v4.0.30319: /LM/W3SVC/2/ROOT-2-131239471512101487):已加载 “C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System\v4.0.0.0__b77a5c561934e089\System.dll”。 已跳过加载符号。模块已优化,调试器选项 “仅我的代码”已启用

“iisexpress.exe”(CLR v4.0.30319: /LM/W3SVC/2/ROOT-2-131239471512101487):已加载 “C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Core\v4.0.0.0_uuuB77A5C561934E089\System.Core.dll”。 已跳过加载符号。模块已优化,调试器选项 “仅我的代码”已启用

(等)