13

Mam mapowanie takiego:Prevent Nhibernate schemaexport od generowania kluczy obcych na ma wiele relacji

HasMany(x => x.Orders).KeyColumn("CustomerID"); 

który powoduje ograniczenie takiego być generowany przez schemaexport:

alter table [CustomerOrder] 
    add constraint FK45B3FB85AF01218D 
    foreign key (CustomerID) 
    references [Customer] 

I próbowałem dodawać .NotFound.Ignore() jak w odwzorowaniu References(), aby wyłączyć generowanie ograniczeń, ale to nie działa.

Czy można zdefiniować odwzorowanie, które wymusi wygenerowanie ograniczenia przez SchemaExport?

Odpowiedz

22

Zdobione:

HasMany(x => x.Orders).KeyColumn("CustomerID").ForeignKeyConstraintName("none"); 

pochowany w źródle jest sprawdzenie zignorować tworzenie jeśli nazwa jest „none”

+2

Dzięki za odkrycie! Potrzebowałem tego, aby zapobiec obcym kluczom bazy danych między tabelami>. < Dla nieprofesjonalnych użytkowników: klucz obcy = "none" – Groxx

+2

W późniejszych wersjach FluentNHibernate użyjesz '.ForeignKey (" none ")', aby to osiągnąć; '.ForeignKeyConstraintName()' nie jest już funkcją. –

Powiązane problemy