0

我在 Visual C# 2010 Express 项目中使用 EF4.1,但不知道如何ToString()metadata类文件中覆盖。

这甚至可能吗?

我希望避免在实际的上下文类文件中进行覆盖,因为如果您从数据库重建上下文,它们会被替换。

元数据类文件内容...

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

上下文类内容...

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

这让我觉得我犯了一个非常愚蠢的错误,所以如果有人能指出我正确的方向,那就太棒了。如果我必须在上下文类中这样做......所以我真的很想避免它(我已经在这里测试了覆盖并且它工作正常)......

用最简单的术语来说,我的问题是如何在ToString()不将覆盖放在上下文类文件中的情况下进行覆盖。

4

1 回答 1

1

您的 ToString 在密封类中,您不希望它在外部类中吗?就像是...

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

    public override string ToString() {
        return Name;
    }
}
于 2012-04-28T04:14:08.407 回答