public void Save() { if (!EntitySchemaManager.TryGetSchema(GetType(), out IEntitySchema view)) { throw new ArgumentException(); } if (!DbConnectionManager.TryGet(view.ConnectKey, out DbConnectionProvider connectionProvider)) { throw new InvalidOperationException("not found DbProvider:" + view.ConnectKey); } switch (_saveUsage) { case SaveUsage.Unknown: throw new InvalidOperationException("Unknown SaveUsage"); case SaveUsage.Update: connectionProvider.Update(new object[] { this }); break; case SaveUsage.Insert: connectionProvider.Insert(new object[] { this }); break; } }
public static List <T> Load <T>(Expression <Func <T, bool> > condition = null) where T : RowAdapter, new() { if (!EntitySchemaManager.TryGetSchema <T>(out IEntitySchema view)) { throw new ArgumentException(string.Format("not found {0}:{1}", nameof(IEntitySchema), typeof(T).FullName)); } if (!DbConnectionManager.TryGet(view.ConnectKey, out DbConnectionProvider connectionProvider)) { throw new InvalidOperationException("not found DbProvider:" + view.ConnectKey); } return(Load <T>(connectionProvider, condition)); }
public static void LoadPrimary(IEntitySchema entitySchema) { if (entitySchema == null) { throw new ArgumentNullException(nameof(entitySchema)); } if (!DbConnectionManager.TryGet(entitySchema.ConnectKey, out DbConnectionProvider connectionProvider)) { throw new InvalidOperationException("not found DbProvider:" + entitySchema.ConnectKey); } var str = string.Format("Select IsNull(Max([ID]), 0) From [{0}]", entitySchema.Name); var obj = connectionProvider.ExecuteScalar(str); var maxPrimary = Convert.ToInt64(obj); _mkv[entitySchema.EntityType] = maxPrimary; }