Entity Framework en delete cascade

Tengo problemas para eliminar filas relacionadas en Entity Framework 4.1. Tengo mesas con relaciones

Book 1 <---> * BookFormats

He configurado la cascada de eliminación:

ALTER TABLE [dbo].[BookFormats]  WITH CHECK ADD  CONSTRAINT [FK_BookFormats_Book] 
FOREIGN KEY([BookID]) REFERENCES [dbo].[Book] ([BookID]) on delete cascade

La propiedad EDMX

Entonces, quiero eliminar todoBokFormats elementos relacionados con miBook objeto:

 var originalBook = m.db.Book.First(x => x.BookID == bookId);
 originalBook.BookFormats.Clear();
 m.db.SaveChanges();

Pero, recibo el error:

La operación falló: la relación no se pudo cambiar porque una o más de las propiedades de clave externa no son anulables. Cuando se realiza un cambio en una relación, la propiedad de clave externa relacionada se establece en un valor nulo. Si la clave externa no admite valores nulos, se debe definir una nueva relación, se debe asignar a la propiedad de clave externa otro valor no nulo o se debe eliminar el objeto no relacionado.

Me quedé sin ideas sobre cómo eliminar estos objetos. ¿Algunas ideas

Respuestas a la pregunta(10)

Su respuesta a la pregunta