Ho cercato di inserire la riga nella tabella avere un RequestID colonna di identità (che è la chiave primaria pure)Impossibile eseguire Creare, aggiornare o cancellare le operazioni sulla Tabella perché non ha chiave primaria
HelpdeskLog logEntry = new HelpdeskLog { RequestBody = message.Body };
if (attachment != null)
logEntry.Attachments = Helper.StreamToByteArray(attachment.ContentStream);
Database.HelpdeskLogs.InsertOnSubmit(logEntry);
Ma il mio codice genera inevitabilmente seguente errore
Impossibile eseguire Creare, aggiornare o cancellare le operazioni nella tabella perché non ha chiave primaria.
nonostante colonna di chiave primaria esiste infatti
Questo è quello che ho cercato di fare:
- Per cercare nel debugger il valore della colonna di identità in cui inserire modello a oggetti. È 0
- Per inserire valori falsi manualmente (con SQL) nella tabella: funziona correttamente, valori di identità generati come previsto
- Per assicurare che SQLMetal abbia generato la tabella di tabella correttamente. Tutto OK, l'attributo della chiave primaria è generato correttamente
Tuttavia, nessuno dei due approcci ha aiutato. Qual è il trucco, qualcuno lo sa?
Grazie! Il mio codice sembrava un po 'diverso, ma il principale era lo stesso '[global :: System.Data.Linq.Mapping.ColumnAttribute (Storage =" _ ID ", DbType =" UniqueIdentifier NOT NULL ", IsPrimaryKey = true)]' ha fatto il trucco. –