LINQ do SQL insert-if-non-nie istnieje
Chciałbym wiedzieć, czy istnieje łatwiejszy sposób wstawienia rekordu, jeśli nie istnieje on już w tabeli. Nadal próbuję zbudować moje umiejętności LINQ do SQL.
Oto, co mam, ale wygląda na to, że powinien być łatwiejszy sposób.
<code>public static TEntity InsertIfNotExists<TEntity> ( DataContext db, Table<TEntity> table, Func<TEntity,bool> where, TEntity record ) where TEntity : class { TEntity existing = table.SingleOrDefault<TEntity>(where); if (existing != null) { return existing; } else { table.InsertOnSubmit(record); // Can't use table.Context.SubmitChanges() // 'cause it's read-only db.SubmitChanges(); } return record; } </code>