Problème avec cascade supprimer en utilisant Entity Framework et System.Data.SQLite

J'ai une DB SQLite qui est configuré de sorte que lorsque je supprimer une Personne de la supprimer est en cascade. Cela fonctionne très bien lorsque je supprimer manuellement une Personne (tous les enregistrements qui font référence à la PersonID sont supprimés). Mais quand j'utilise Entity Framework pour supprimer la Personne que j'obtiens une erreur:

System.InvalidOperationException: The operation failed: The relationship could not be changed because one or more of the foreign-key properties is non-nullable. When a change is made to a relationship, the related foreign-key property is set to a null value. If the foreign-key does not support null values, a new relationship must be defined, the foreign-key property must be assigned another non-null value, or the unrelated object must be deleted.

Je ne comprends pas pourquoi cela se produit. Mon déclencheur est défini pour nettoyer tous les objets associés avant la suppression de l'objet qu'il a été dit à supprimer.

Quand je vais dans l'éditeur de modèle et de vérifier les propriétés de la relation, il ne montre aucune action pour le OnDelete de la propriété. Pourquoi n'est-ce pas réglé correctement en le tirant par la DB? Si je change cette valeur en Cascade tout fonctionne correctement, mais je préfère ne pas compter sur ce manuel de changer parce que si j'actualise mon modèle à partir de la DB et il perd.

Voici la relivent SQL pour mes tables.

CREATE TABLE [SomeTable] 
(
    [SomeTableID] INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
    [PersonID] INTEGER NOT NULL REFERENCES [Person](PersonID) ON DELETE CASCADE
)
CREATE TABLE [Person]
(
    [PersonID] INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT
)

source d'informationauteur jamone