sql >> Databasteknik >  >> RDS >> Oracle

arbetar med Fluent NHibernate och guide-id

Uppdatering:

Du måste implementera din egen IUserType för att hantera de strecklösa guiderna.
Du kan läsa om det här:
http://dotnet.dzone.com/articles/understanding-nhibernate-type

Detaljerna nedan är nu irrelevanta för frågan men jag kommer att behålla den här för framtida referens så att folk kan hitta dem.

Använda guider "normalt"

I din enhet ska ID:t vara av typen Guid:

public virtual Guid Id { get; private set; }

Och i din ClassMap bör du kartlägga det så här:

Id(x => x.Id)
  .Column("Id")
  .GeneratedBy.GuidComb();

Detta kommer att använda den rekommenderade kamalgoritmen för att generera nya guider.

eller

Id(x => x.Id)
  .Column("Id")
  .GeneratedBy.Guid();

för att skapa nya guider med System.Guid

eller

Id(x => x.Id)
  .Column("Id")
  .GeneratedBy.GuidNative();

om du vill låta databasen generera guiden åt dig.




  1. CakePHP konverterar MySQL-heltal till strängar... förstör rand()-funktionen

  2. Prestanda för att söka igenom 100 miljoner skivor

  3. Ändra Excel-datumnummer till Oracle-datum

  4. skapa unika begränsningar per användare