Por que meu Projeto site não vai se adaptar a NET 3.5?
-
07-07-2019 - |
Pergunta
Nós convertemos nossa solução de .NET 2.0 para .NET 3.5. Todos os projetos convertidos bem, exceto para o Projeto site, que ainda não entende o que quero dizer quando se usa 'var' e similares.
Eu olhei nas páginas de propriedades para o projeto web, e a estrutura de destino é definido como' .NET Framework 3.5' .
Quaisquer outras ideias?
Solução
Adicione o seguinte ao web.config:
<system.codedom>
<compilers>
<compiler language="c#;cs;csharp" extension=".cs" warningLevel="4"
type="Microsoft.CSharp.CSharpCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<providerOption name="CompilerVersion" value="v3.5"/>
<providerOption name="WarnAsError" value="false"/>
</compiler>
</compilers>
</system.codedom>
Outras dicas
Por padrão, um novo aplicativo web em 3,5 tem as seguintes referências:
- Sistema System.Configuration
- System.Core
- System.Data ??li>
- System.Data.DataSetExtensions
- System.Drawing
- System.EnterpriseServices
- System.Web
- System.WebExtensions
- System.Web.Mobile
- System.Web.Services
- System.Xml
- System.Xml.Linq
Além disso, no arquivo web.config, você vai encontrar as seguintes informações de montagem perto do topo do seu arquivo web.config:
<assemblies>
<add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
</assemblies>
e você também vai encontrar o tempo de execução de ligação de assembly encontrado na parte inferior do arquivo:
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Web.Extensions" publicKeyToken="31bf3856ad364e35"/>
<bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Extensions.Design" publicKeyToken="31bf3856ad364e35"/>
<bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
Eu estou apostando que as questões de não ter todas estas referências está causando com suas declarações var. Verifique se todos esses conteúdos foram devidamente adicionados / criado.