Mapping DayOfWeek aus dem System-Namespace mit Fluent Nhibernate

8

Ich arbeite gerade an einem MVC 3-Projekt, das Fluent NHibernate verwendet. Ich benutze die System.DayOfWeek-Enumeration, aber beim Mapping dieser habe ich den folgenden Fehler erhalten -

%Vor%

Beispielverwendung -

%Vor%

Ich habe diese spezielle Frage in Mailinglisten und auf Stackoverflow gesehen, aber die Nuancen davon schienen nie vollständig erfasst zu sein, und die Person, die die Frage stellt, wird darauf verwiesen, wie man ein benutzerdefiniertes Typmapping verwendet.

Ich bin mir bewusst, wie man die Customtype-Funktionalität in Fließkomma-Karten benutzt und häufig benutzt. Allerdings verstehe ich nicht, warum diese Enum insbesondere nicht abgebildet werden kann. Ich nehme an, dass es etwas mit dem System-Namespace zu tun hat, zu dem es gehört?

Wenn jemand etwas Licht darauf werfen könnte, wäre ich sehr glücklich.

Danke

    
rsw 13.03.2012, 15:05
quelle

2 Antworten

1

Ich habe das Mapping von DayOfWeek enum mit diesem Mapping arbeiten lassen.

%Vor%

und seine Karten sind gut mit einem nvarchar (255) in meiner mssql-Datenbank.

Mein Eigentum sieht wie dieses

aus %Vor%

Ich benutze NHibernate Version: 3.3.1.4000 und Fluent Nhibernate Version: 1.3.0.733

    
fito 24.01.2013 17:17
quelle
1

Wie bei jedem Enum-Mapping mit NHibernate, ersparen Sie sich etwas Kummer (Dirty-Reads, die unnötige Schreibvorgänge verursachen, unterschiedliche Typen in der Datenbank usw.) und verwenden Sie immer nur einen PersistentEnumType.

In diesem Beispiel erstellen Sie Ihren PersistentEnumType:

%Vor%

Benutze es dann, um dein Mapping zu machen:

%Vor%

Jetzt haben Sie die Entität, die nicht schmutzig liest (und so keine unnötigen Schreibvorgänge) und eine korrekte Typzuordnung in der Datenbank (wenn Sie SchemaExport verwenden, um Ihr Schema zu generieren).

Weitere Informationen finden Sie unter einem Oldie, aber goody bei Ссылка

    
Ted 26.10.2013 17:35
quelle

Tags und Links