Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

315
Visualizações
How to use C# 6 with Web Site project type?

Updated an existing Web Site project type Visual Studio 2015, I changed the Framework to 4.6.

I then expected to have all those new features available in my code behind files.

Unfortunately I'm getting errors like:

Error CS8026: Feature 'expression-bodied property' is not available in C# 5. Please use language version 6 or greater.

or e.g.:

Error CS8026: Feature 'interpolated strings' is not available in C# 5. Please use language version 6 or greater.

I did a quick Google check and found a guy posting some comments in a blog posting of ScottGu (search for "8026" on the page).

Since I do not understand his solution, plus I want to have the solution more visible, I've created this SO posting.

My question:

How can I have a Visual Studio 2015 project of type Web Site (i.e. not Web Application) to recognize C# 6 features?

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

I've tested this with ASP.NET MVC 5 (tested 5.2.3), and your mileage may vary with other web frameworks, but you just need to add the NuGet package for Roslyn CodeDOM.

Microsoft.CodeDom.Providers.DotNetCompilerPlatform should add the DLL files...

PM> Install-Package Microsoft.CodeDom.Providers.DotNetCompilerPlatform

Replacement CodeDOM providers that use the new .NET Compiler Platform ("Roslyn") compiler as a service APIs. This provides support for new language features in systems using CodeDOM (e.g. ASP.NET runtime compilation) as well as improving the compilation performance of these systems.

...and also add the following to your web.config:

<system.codedom>
  <compilers>
    <compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:6 /nowarn:1659;1699;1701" />
    <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:14 /nowarn:41008 /define:_MYTYPE=\&quot;Web\&quot; /optionInfer+" />
  </compilers>
</system.codedom>

If the XML is still missing, try adding yourself.

over 4 years ago · Santiago Trujillo Relatório

0

See also this blog post from Sayed Ibrahim Hashimi on how to do this through the VS IDE.

In Visual Studio 2015 Update 1 we have included a new feature to simplify this. When you have a solution open which has at least one web project which is targetting .NET 4.5+ and does not have the DotNetCompilerPlatform NuGet package in the Project menu you’ll see a new option, Enable C# 6 / VB 14 appear.
enter image description here

Update.

VS 2017 and 2019 have this feature moved to Build -> ASP.NET Compilation. enter image description here

over 4 years ago · Santiago Trujillo Relatório

0

I installed the DotNetCompilerPlatform as @jbtule suggested, but was still getting the same errors.

PM> Install-Package Microsoft.CodeDom.Providers.DotNetCompilerPlatform

I closed the solution, deleted the bin and obj folders, then opened the solution and rebuilt. Now the C# 6 features work.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda