2017-08-09 2 views
-5

古いC#アプリケーションのデバッグに問題があります。コンパイルと実行すると、以下のように私にエラーを与える:

public partial class Employes 
{ 
    public string nom { get; set; } 
    public string prenom { get; set; } 

    public string FullName => $"{nom} {prenom}"; //Error here 

    public Employes() 
    { 
     this.inscriptions = new HashSet<inscriptions>(); 
     this.Participants = new HashSet<Participants>(); 
     this.Roles = new HashSet<Roles>(); 

    } 
} 

コンパイルエラー:

**; expected 
$ unexpected** 
+1

? –

+2

このアプリケーションは、C#6.0の機能を使用する場合、 "古い"ものではありません... – Adrian

+1

あなたが投稿したコード、 "古い"コード、またはこの古いプロジェクトを編集しましたか?意味、それはある時点でコンパイルされましたが、もはやコンパイルされませんでしたか?あるいはコードを変更しましたが、今はコンパイルされません。 –

答えて

3

$Interpolated Stringsとして知られているC#6機能です。これを古いC#アプリケーションと記述すると、おそらくこのプロジェクトではC#5以下が使用されています。

EDIT:C#/ MSBuildとVisual Studioの違いについては多少の混乱があるようです。ケースでは、Visual Studioのより新しいバージョンを使用している、ここではC#のバージョンを確認するための場所(、プロジェクトのプロパティの下の構築、高度な)です:C#のバージョンは、あなたがそのコードをコンパイルするために使用している

Vissual Studio Advanced Build Settings

+4

その前提は間違っています。 Visual Studioは、デフォルトで使用可能な最高のC#バージョンをターゲットにします。実際の答えは「おそらく、Visual Studio 2015以降ではこれを開いていません」 –

+2

@CamiloTerevintoここでは想定していません。あなたは、プロジェクト設定がデフォルトのままになっているという前提を作っています。私は、プロジェクトがC#5以下をターゲットにしている可能性があると簡単に述べました。 –

関連する問題

 関連する問題