2012-04-28 2 views
0

Visual C#2010 ExpressプロジェクトでEF4.1を使用していますが、metadataクラスファイルでToString()をオーバーライドする方法がわかりません。EFメタデータクラスファイルのToStringをオーバーライド

これも可能ですか?

データベースからコンテキストを再構築すると、実際のコンテキストクラスファイルが置き換えられたために上書きされないようにしたいと考えていました。

メタデータクラスファイルの内容...

[MetadataType(typeof(customerSurveyMetadata))] 
    public partial class customerSurvey { 
     private sealed class customerSurveyMetadata { 
      public string Name { get; set; } 
      public override string ToString() { 
       return Name; 
      } 
     } 
    } 

Contextクラスの内容...

public partial class customerSurvey 
    { 
     ....Other Properties.... 
     public string Name { get; set; } 
     ....Other Properties.... 
    } 

これは誰かがポイントすることができますので、もし私が本当にDUMB間違いを犯してるように私は感じて作っています私は正しい方向にそれは素晴らしいだろう。コンテキストクラスでそれをやらなければならない場合は、私はそれを避けたいと思っています(私はここでオーバーライドをテストしましたが、うまくいきます)...

私の質問オーバーライドをコンテキストクラスファイルの中に入れないで、ToString()をどのようにオーバーライドするのですか?

答えて

1

あなたのToStringは密閉されたクラスにありますが、それは外部クラスにはありませんか?何かのように...

[MetadataType(typeof(customerSurveyMetadata))] 
public partial class customerSurvey { 
    private sealed class customerSurveyMetadata { 
     public string Name { get; set; } 
    } 

    public override string ToString() { 
     return Name; 
    } 
} 
+0

素晴らしい、ありがとうございました。注釈や封印されたクラスを必要としませんでした。私はそれが私が行方不明であったことを明らかにしなければならないことを知っていた! – Jared

関連する問題