如何在 ASP.net 网站中使用更新的语言功能?
How to use newer language features in an ASP.net website?
我正在尝试在我的 asp.net 网站中使用本地功能:
public class Handler : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
Int32 Seven()
{
return 7;
}
}
}
但是我得到一个编译时错误:
CS8026 Feature 'local functions' is not available in C# 5. Please use language version 7.0 or greater.
那好吧。
如何在 ASP.net 网站中使用语言版本 7.0 或更高版本?
似乎每个人都知道如何将 ASP.net 网络应用程序 升级到较新版本的 C#。但是如何将 ASP.net 网站 升级到较新版本的 C#?
一个人建议;忘记网站没有项目(同样,那是网络应用程序)。
其他人向您的 web.config
推荐 :
<system.codedom>
<compilers>
<compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:default /nowarn:1659;1699;1701" />
<compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:default /nowarn:41008 /define:_MYTYPE=\"Web\" /optionInfer+" />
</compilers>
</system.codedom>
除了这只会导致更多的编译时错误:
The CodeDom provider type "Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" could not be located.
有人建议你 (Microsoft.CodeDom.Providers.DotNetCompilerPlatform
);除了他没有解释那是什么,也没有解释如何安装它。
停止摸索
谷歌搜索就够了,随机尝试会导致更多问题的一半答案。是时候揭晓答案了。
在 ASP.net 网站中使用 C# 8 的正确、完整、实际、设计、支持和预期的方式是什么?
奖金:
将目标框架更改为 4.8 应该可以获得 C# 7.3 功能。 C#特性标准化,与框架版本对应。
https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/configure-language-version
我正在尝试在我的 asp.net 网站中使用本地功能:
public class Handler : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
Int32 Seven()
{
return 7;
}
}
}
但是我得到一个编译时错误:
CS8026 Feature 'local functions' is not available in C# 5. Please use language version 7.0 or greater.
那好吧。
如何在 ASP.net 网站中使用语言版本 7.0 或更高版本?
似乎每个人都知道如何将 ASP.net 网络应用程序 升级到较新版本的 C#。但是如何将 ASP.net 网站 升级到较新版本的 C#?
一个人建议
其他人向您的 web.config
推荐
<system.codedom>
<compilers>
<compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:default /nowarn:1659;1699;1701" />
<compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:default /nowarn:41008 /define:_MYTYPE=\"Web\" /optionInfer+" />
</compilers>
</system.codedom>
除了这只会导致更多的编译时错误:
The CodeDom provider type "Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" could not be located.
有人建议你 Microsoft.CodeDom.Providers.DotNetCompilerPlatform
);除了他没有解释那是什么,也没有解释如何安装它。
停止摸索
谷歌搜索就够了,随机尝试会导致更多问题的一半答案。是时候揭晓答案了。
在 ASP.net 网站中使用 C# 8 的正确、完整、实际、设计、支持和预期的方式是什么?
奖金:
将目标框架更改为 4.8 应该可以获得 C# 7.3 功能。 C#特性标准化,与框架版本对应。
https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/configure-language-version