2012-04-11 17 views
4

Gibt es eine andere Möglichkeit, das [AllowHtml] -Attribut für eine Eigenschaft einer Klasse festzulegen, die von EntityFramework automatisch generiert wird? Ich hasse es, die automatisch generierten Dateien zu ändern, denn jedes Mal, wenn ich das Modell ändere, gehen meine Änderungen verloren.AllowHtml-Attribut in EntityFramework-Klasse

Es gibt jedoch keinen anderen offensichtlichen Weg, [AllowHtml] für eine bestimmte Eigenschaft festzulegen, als das Attribut zu verwenden. Gibt es eine nicht-attributive Möglichkeit, dies zu tun?

Antwort

8

Sie können MetadataTypeAttribute verwenden, um Attribute für den generierten Code in einer zugeordneten (Buddy-) Klasse anzugeben. So setzen Sie Ihre Attribute in einer separaten Klasse, die nicht mit dem Code Wieder Generation erfolgen:

[MetadataType(typeof(YourEntityMetadata))] 
public partial class YourEntityClass 
{    
} 

public class YourEntityMetadata 
{ 
    [AllowHtml] 
    public string YourPropertyWithHtml { get; set; } 
} 

Eigenschaftsnamen in der Metadaten-Klasse sollten Sie Ihre Entitätseigenschaft Namen übereinstimmen.