2010-04-20 9 views
1

j'ai séquence clé primaire pour oracle dans ma classe Castle ActiveRecord:Partage des classes de activerecord entre Oracle et MS SQL Server

[PrimaryKey(PrimaryKeyType.SeqHiLo, "UserId", SequenceName = "users_seq")] 
public int Id { get; set; } 

Maintenant je dois configurer ActiveRecord pour utiliser Sql Server, mais il ne supporte pas les séquences, mais ce n'est pas possible, car le mappage spécifique à Oracle est utilisé. Je ne m'inquiète pas de l'algorithme de génération d'identité, je veux juste qu'il fonctionne, donc est-il possible de fournir un mappage général pour le champ d'identité, afin que les classes puissent être partagées entre SQL Server et Oracle?

Répondre

2

Vous pouvez utiliser PrimaryKeyType.Native - il choisit automagiquement entre SeqHiLo et HiLo en fonction de la base de données. Jetez un oeil à la docs pour d'autres outils - la plupart d'entre eux sont indépendants de la base de données.