public IConfiguration SetDefaultChangeTrackingMode(ChangeTrackingMode value) { if (value != ChangeTrackingMode.Default) { _defaultChangeTrackingMode = value; } return(this); }
/// <summary> /// Converts the <see cref="Xtensive.Sql.Model.ChangeTrackingMode"/> to <see cref="Xtensive.Orm.FullTextChangeTrackingMode"/>. /// </summary> /// <param name="toConvert">The mode to convert.</param> /// <returns>Converted mode.</returns> private FullTextChangeTrackingMode ConvertChangeTrackingMode(ChangeTrackingMode toConvert) { switch (toConvert) { case ChangeTrackingMode.Auto: return(FullTextChangeTrackingMode.Auto); case ChangeTrackingMode.Manual: return(FullTextChangeTrackingMode.Manual); case ChangeTrackingMode.Off: return(FullTextChangeTrackingMode.Off); case ChangeTrackingMode.OffWithNoPopulation: return(FullTextChangeTrackingMode.OffWithNoPopulation); default: return(FullTextChangeTrackingMode.Default); } }
protected virtual string TranslateChangeTrackingMode(ChangeTrackingMode mode) { switch (mode) { case ChangeTrackingMode.Auto: return("AUTO"); case ChangeTrackingMode.Manual: return("MANUAL"); case ChangeTrackingMode.Off: return("OFF"); case ChangeTrackingMode.OffWithNoPopulation: return("OFF, NO POPULATION"); default: return("AUTO"); } }
private ObjectScope(object item = null, bool autoCommit = false, ChangeTrackingMode mode = ChangeTrackingMode.Default, Type type = null, DbConnection connection = null, IConfiguration config = null) { if (item == null && type == null) { throw new ArgumentException("Invalid ObjectScope definition"); } if (item != null) { item.CheckReadOnly(); } AutoCommit = autoCommit; IsNew = item == null; ItemType = type; Configuration = config; ChangeTracking = mode != ChangeTrackingMode.Default ? mode : ConfigurationFactory.Get(type).DefaultChangeTrackingMode; if (!IsNew) { if (type == null) { ItemType = item.GetType(); } Item = item; ItemSnapshot = CreateSnapshot(item); } Scopes.Push(this); if (connection == null || connection.State != ConnectionState.Open) { Transaction = new TransactionScope(TransactionScopeOption.Required, new TransactionOptions { IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted }); } else { Connection = connection; } }
public IConfiguration SetDefaultChangeTrackingMode(ChangeTrackingMode value) { if (value != ChangeTrackingMode.Default) { _defaultChangeTrackingMode = value; } return this; }
internal FullTextIndex(DataTable dataTable, string name) : base(dataTable, name) { changeTrackingMode = ChangeTrackingMode.Auto; }
public static ObjectScope New <T>(T item = null, bool autoCommit = false, ChangeTrackingMode mode = ChangeTrackingMode.Default, DbConnection connection = null) where T : class { return(new ObjectScope(item, autoCommit, mode, typeof(T), connection)); }