Passa ai contenuti principali

Entity Framework OnDelete Cascade

Problema: rendere funzionanate in Entity Framework l'ON CASCADE DELETE settato tramite SQL DDL in SqlServer.

Dopo un Update del modello visuale l'"ON CASCADE DELETE" non viene mai correttamente riportato negli schemi xml del modello (è un comportamento previsto: vedi msdn).

Soluzione:
Nel designer dell'edmx bisogna selezionare il collegamento (la FK) e manualmente impostare il valore di End1Ondelete (o End2Ondelete) su "Cascade". Purtroppo nel mio caso questa modifica interrompe la generazione "one click" del modello a partire dal db.

In un post suggeriscono una strada automatica (che non ho provato) per ottenere questa modifica. Spero vivamente che implementino questa funzionalità nelle prossime versioni di EF.


Commenti

Post popolari in questo blog

Log.Net: Conflitto Con CrystalReport per Visual Studio 2010

Situazione: Web Application Asp.Net 4.0, Utilizzo delle librerie di Crystal Report per VS2010. Il progetto web utilizza Log.Net, scaricato dal sito ufficiale. Un problema simile si verifica con applicazioni Windows Form. Problema: Le due librerie vanno in conflitto sia in fase di compilazione ( 1550854 - "Could not load file or assembly 'log4net' or one of its dependencies" Error when building Visual Studio 2010 solution utilizing the Crystal Reports .NET Runtime ), sia una volta installata sulla macchiana target (L'inizializzatore di tipo di 'CrystalDecisions.Shared.SharedUtils' ha generato un'eccezione. Impossibile caricare il file o l'assembly 'log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=692fbea5521e1304' o una delle relative dipendenze. La definizione di manifesto dell'assembly specificato non corrisponde al riferimento all'assembly.). Soluzione Spiegata: Il thread in cui ne parlano. A quanto ho ca...

Dotnetnuke non migrerà ad asp .NET MVC

Il grande capo di dnn Shawn Walker ha messo in chiaro che non tenteranno un porting di dnn verso asp .Net MVC, dotnetnuke resterà per sempre su web forms. La scelta è tanto saggia quanto obbligata. Esiste però un modo per estendere DNN o integrarlo con un'applicazione MVC? sembra di si, il completo tutorial in 3 parti direttamnte dai blog ufficiali delgi sviluppatori Dnn: parte1 parte2 parte3 Per completezza qui il famoso post di ScottGu sulla volontà di microsoft di tenere in piedi con uguali risorse sia asp.Net MVC sia WebForms.

Entity Framework: SqlException Line 7: Incorrect syntax near '('

La stringa SQL generata per il comando linq2Entity First funziona correttamente con SQL server 2008. L'sql generato è SELECT TOP(1) ... Per potersi collegare ad un DB SqlServer2005 serve modificare nei metadati la proprietà ProviderManifestToken ="2005". Emerge a questo punto l'errore che da il titolo al post: ogni chiamata a FirstOrDefault o First esplode riportando il messaggio sibillino. L'inghippo è proprio l'SQL generato: TOP (1) sembra indigesto a sql server 2005. La soluzione: usare come livello di compatibilità 2000 per la proprietà ProviderManifestToken. La query generata è Top 1... , senza parentesi, e funziona su SqlServer2005 Q uesto post nei forum microsof illustra un problema simile e la soluzione.