4

このコードでPOCOをコンパイルしようとしています

public class MenuItem
{
    public string Name 
    { get; set; }
    public string Url
    { get; set; }
}

get と set でコンパイル エラーが発生し続け、次のようなメッセージが表示されます。私は何が欠けていますか?.NET 3.5 としてコンパイルするように設定されているローカル ファイル システム Web サイトの App_Code フォルダーで、このクラスをコンパイルしています。以前にこれを行ったことがあることは知っていますが、自分が何を違う方法で行っているのかわかりません。

4

1 に答える 1

12

Web.config次のように、ファイルの<system.codedom>要素の下にサブ要素が含まれていることを確認してください<configuration>

<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>

この問題は、自動プロパティをサポートしていないアプリケーション (v2.0) をコンパイルするために、ASP.NET が古いバージョンの C# コンパイラを実行しているという事実から発生します。.NET 3.5 機能を使用するには、コンパイラのバージョンをWeb.config明示的に指定する必要があります。

于 2008-12-16T04:57:41.583 に答える