gpt4 book ai didi

asp.net-mvc - F# Asp.Net CodeDom ProviderOptions 问题

转载 作者:行者123 更新时间:2023-12-02 18:21:46 25 4
gpt4 key购买 nike

我正在 IIS 7 上使用 F# 创建 ASP.NET MVC 应用程序。

当我尝试从浏览器运行它时,我遇到了包含以下内容的 YSOD:

[ArgumentNullException: Value cannot be null. Parameter name: dictionary]
System.Collections.Generic.Dictionary2..ctor(IDictionary2 dictionary, IEqualityComparer`1 comparer) +12700827
System.Web.Compilation.CompilationUtil.CreateCodeDomProviderWithPropertyOptions(Type codeDomProviderType) +84
System.Web.Compilation.CompilationUtil.CreateCodeDomProviderNonPublic(Type codeDomProviderType) +16
System.Web.Compilation.AssemblyBuilder..ctor(CompilationSection compConfig, ICollection referencedAssemblies, CompilerType compilerType, String outputAssemblyName) +469
System.Web.Compilation.CompilerType.CreateAssemblyBuilder(CompilationSection compConfig, ICollection referencedAssemblies, String generatedFilesDir, String outputAssemblyName) +127
System.Web.Compilation.BuildProvidersCompiler.ProcessBuildProviders() +675 System.Web.Compilation.BuildProvidersCompiler.PerformBuild() +46 System.Web.Compilation.ApplicationBuildProvider.GetGlobalAsaxBuildResult(Boolean isPrecompiledApp) +11321455
System.Web.Compilation.BuildManager.CompileGlobalAsax() +50 System.Web.Compilation.BuildManager.EnsureTopLevelFilesCompiled() +872

我使用 Reflector 查找了该方法,看看它是否可以为我提供更多上下文,结果发现它在第一行失败了

private static CodeDomProvider CreateCodeDomProviderWithPropertyOptions(Type codeDomProviderType)
{
IDictionary<string, string> providerOptions = new Dictionary<string, string>(GetProviderOptions(codeDomProviderType));
//Snip
}

这让我相信我在 Web.config 中为 F# CodeDom 指定的 propertyOptions 不正确。但是,如果我删除它们,我会收到相同的错误。

<system.codedom>
<compilers>
<compiler language="F#;f#;fs;fsharp" extension=".fs" warningLevel="4"
type="Microsoft.FSharp.Compiler.CodeDom.FSharpAspNetCodeProvider,
FSharp.Compiler.CodeDom">
<providerOption name="CompilerVersion" value="v4.0"/>
<providerOption name="WarnAsError" value="false"/>
</compiler>
</compilers>
</system.codedom>

关于纠正这个错误有什么想法吗?

最佳答案

这是 VS2010 Beta2 中 ASP.NET 的一个错误(现已修复,因此将在下一个版本中起作用)。它会影响任何第三方 CodeDOM 提供商,而且我不认为有任何解决方法。

关于asp.net-mvc - F# Asp.Net CodeDom ProviderOptions 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1731623/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com