Napadá mě několik potenciálních možností:
- Nastavte v databázi kaskádové mazání, aby bylo mazání vždy úspěšné.
- Před smazáním zkontrolujte související záznamy pomocí SELECT. To vyžaduje, aby aplikace znala omezení.
- Dobrý model domény (obchodní třídy) by měl aplikaci umožnit, aby si byla vědoma souvisejících záznamů.
- K definování operací kaskádového mazání lze použít O/R mapovač, jako je NHibernate.
- Pomocí SMO (Microsoft.SqlServer.Smo) zkontrolujte databázové schéma na vztahy a poté zkontrolujte existující související záznamy. Nevím, jestli je to možné.