2008-12-09 4 views

Antwort

10

Indirekt, wie so.

Persönlich lasse ich den Speicher int public (zum Beispiel als DbFoo, wo die Enum-Eigenschaft ist Foo) - So kann ich noch lambdas gegen die Säule für die Ausführung bei der DB, zum Beispiel schreiben:

where row.DbFoo == SomeConstant 

Wenn Sie den Speicherwert nicht verfügbar machen, können Sie dies nicht so sauber machen. Man könnte es ebenso interne verlassen, und haben einige Methoden im Rahmen der Filterung zu tun ... hier ist eine ich heute früher schrieb:

public IOrderedQueryable<User> Administrators 
{ 
    get { return Users.Where(x => x.DbUserType == User.UserTypeAdmin) 
      .OrderBy(x => x.Name); 
} 

wo meine interne Konstante ist. In diesem Fall konnte ich keine diskriminierte Unterklasse verwenden, da sie ADO.NET Data Services störte.

+0

Ich benutze die gleiche Methode, und es funktioniert gut. Das ist, bis EFF standardmäßig Enums unterstützt ... – hminaya

Verwandte Themen