ソリューションを .NET 2.0 から .NET 3.5 に変換しました。「var」などを使用するときの意味をまだ理解していない Web サイト プロジェクトを除いて、すべてのプロジェクトは正常に変換されました。
Web プロジェクトのプロパティ ページを調べたところ、ターゲット フレームワークが「.NET Framework 3.5」に設定されています。
他のアイデアはありますか?
ソリューションを .NET 2.0 から .NET 3.5 に変換しました。「var」などを使用するときの意味をまだ理解していない Web サイト プロジェクトを除いて、すべてのプロジェクトは正常に変換されました。
Web プロジェクトのプロパティ ページを調べたところ、ターゲット フレームワークが「.NET Framework 3.5」に設定されています。
他のアイデアはありますか?
以下を 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>
既定では、3.5 の新しい Web アプリには次の参照があります。
さらに、web.config ファイルでは、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>
また、ファイルの下部にあるランタイム アセンブリ バインディングも見つかります。
<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>
これらの参照のすべてを持っていないことが var 宣言に問題を引き起こしていることに賭けています。これらのコンテンツがすべて適切に追加/作成されたことを確認します。