[解決済み] C# 6をWeb Siteプロジェクトタイプで使用するには?
質問
既存の Web サイト プロジェクトタイプのVisual Studio 2015で、Frameworkを4.6に変更しました。
それから私は、ファイルの背後にある私のコードで、それらのすべての新機能が利用できることを期待しました。
残念ながら、私は次のようなエラーを受け取っています。
エラー CS8026: 機能 'expression-bodied property' は C# 5 で使用できません。言語バージョン 6 以上を使用してください。
や、例えば
<ブロッククオートエラー CS8026: 機能 '補間された文字列' は C# 5 で使用できません。言語バージョン6以降をご使用ください。
Googleで調べてみたところ コメント投稿している人 のブログ投稿で、ScottGu(ページ内で "8026" を検索)。
私は彼の解決策を理解しておらず、さらに解決策をもっと目に見えるようにしたいので、この SO 投稿を作成しました。
私の質問です。
どのように私は、Visual Studio 2015のプロジェクトで、タイプ Web サイト (でない(つまり ウェブアプリケーション でなく)、C# 6 の機能を認識することができますか?
どのように解決するのですか?
私はASP.NET MVC 5(5.2.3をテスト済み)でテストしましたが、他のウェブフレームワークでは異なるかもしれません。 NuGet パッケージの Roslyn CodeDOM .
Microsoft.CodeDom.Providers.DotNetCompilerPlatform
は、DLLファイルを追加する必要があります...
PM> Install-Package Microsoft.CodeDom.Providers.DotNetCompilerPlatform
新しい .NET Compiler Platform ("Roslyn") コンパイラーをサービス API として使用する、代替 CodeDOM プロバイダーです。これは、CodeDOM を使用するシステムの新しい言語機能 (例: ASP.NET ランタイム コンパイル) のサポートと、これらのシステムのコンパイル パフォーマンスを向上させるものです。
...そして、以下を 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=\"Web\" /optionInfer+" />
</compilers>
</system.codedom>
それでもXMLが見つからない場合は、自分で追加してみてください。
関連
-
[解決済み】指定されたキャストが有効でない?
-
[解決済み】C#で四捨五入する方法
-
[解決済み】Visual Studio: 操作を完了できませんでした。パラメータが正しくありません
-
[解決済み] DateTime型の誕生日から年齢を計算するにはどうしたらいいですか?
-
[解決済み] ASP.NET WebサイトとASP.NET Webアプリケーションのどちらを選ぶか?
-
[解決済み] Visual StudioでWebプロジェクトでないプロジェクトのApp.Config変換は?
-
[解決済み】NuGetパッケージが見つからない
-
[解決済み】Web Application Project [...] は、IIS を使用するように構成されています。Webサーバーが見つかりませんでした。
-
[解決済み】C# 6.0は.NET 4.0に対応しますか?
-
[解決済み] Visual Studio 2015でC# 6サポートを無効にする方法を教えてください。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】プログラム実行中に1秒待つ
-
[解決済み] メンバー '<メンバー名>' にインスタンス参照でアクセスできない
-
[解決済み] DBNullから他の型にオブジェクトをキャストすることができない
-
[解決済み】Unity3DでOnTriggerEnterが動作しない件
-
[解決済み】取り消せないメンバはメソッドのように使えない?
-
[解決済み】Socket.Selectがエラー "An operation was attempted on something that is not a socket" を返す。
-
[解決済み】Entity FrameworkからのSqlException - セッション内で他のスレッドが動作しているため、新しいトランザクションは許可されません。
-
[解決済み】"指定されたパスのフォーマットはサポートされていません。"
-
VSでscanfエラーを恒久的に解決するには、ソースファイルを作成し、自動的に#define _CRT_SECURE_NO_WARNINGS 1を追加してください。
-
[解決済み】Nullableオブジェクトは値を持たなければならない?