コード例 #1
0
        public static Dictionary <IProperty, object> GetDatabaseValues(this InternalEntityEntry internalEntry, DbContext context)
        {
            if (internalEntry.EntityType.ClrType == typeof(Driver))
            {
                var id = (int)internalEntry.GetPrimaryKeyValue().Value;
                return(context.Set <Driver>()
                       .Where(d => d.Id == id)
                       .Select(d => d.GetValues(internalEntry.EntityType))
                       .SingleOrDefault());
            }

            if (internalEntry.EntityType.ClrType == typeof(Engine))
            {
                var id = (int)internalEntry.GetPrimaryKeyValue().Value;
                return(context.Set <Engine>()
                       .Where(d => d.Id == id)
                       .Select(d => d.GetValues(internalEntry.EntityType))
                       .SingleOrDefault());
            }

            return(null);
        }
コード例 #2
0
 internal void Update(InternalEntityEntry entry)
 {
     _rows.ExchangeValue(rs => rs.SetItem(entry.GetPrimaryKeyValue(), entry.GetValueBuffer()));
 }
コード例 #3
0
 internal void Delete(InternalEntityEntry entry)
 {
     _rows.ExchangeValue(rs => rs.Remove(entry.GetPrimaryKeyValue()));
 }
コード例 #4
0
 internal void Create(InternalEntityEntry entry)
 {
     _rows.ExchangeValue(rs => rs.Add(entry.GetPrimaryKeyValue(), entry.GetValueBuffer()));
 }