/// <summary> /// Constructs an instance of IStoreLogEntry using parts of a row from SqlDataReader. /// Used for creating the store operation for Undo. /// </summary> /// <param name="reader">SqlDataReader whose row has operation information.</param> /// <param name="offset">Reader offset for column that begins operation information.</param> internal SqlLogEntry(SqlDataReader reader, int offset) { this.Id = reader.GetGuid(offset); this.OpCode = (StoreOperationCode)reader.GetInt32(offset + 1); this.Data = reader.GetSqlXml(offset + 2); this.UndoStartState = (StoreOperationState)reader.GetInt32(offset + 3); SqlGuid shardIdRemoves; shardIdRemoves = reader.GetSqlGuid(offset + 4); this.OriginalShardVersionRemoves = shardIdRemoves.IsNull ? default(Guid) : shardIdRemoves.Value; SqlGuid shardIdAdds; shardIdAdds = reader.GetSqlGuid(offset + 5); this.OriginalShardVersionAdds = shardIdAdds.IsNull ? default(Guid) : shardIdAdds.Value; }
private object DeserializeQueuedEvent(SqlDataReader result) { var eventTypeIdColumnId = result.GetOrdinal("EventTypeId"); var eventDataColumnId = result.GetOrdinal("EventData"); result.Read(); var eventTypeId = result.GetSqlGuid(eventTypeIdColumnId).Value; return this.serializationMethod.Deserialize(new XmlSerializedData(eventTypeId, result.GetSqlXml(eventDataColumnId).CreateReader())); }
private EventStream DeserializeEvents(Guid id, SqlDataReader result) { var lastVersion = 0; var snapshotVersion = 0; var eventTypeIdColumnId = result.GetOrdinal("EventTypeId"); var eventDataColumnId = result.GetOrdinal("EventData"); var versionColumnId = result.GetOrdinal("Version"); var snapshotVersionColumnId = result.GetOrdinal("SnapshotVersion"); var events = new List<object>(); while (result.Read()) { var eventTypeId = result.GetSqlGuid(eventTypeIdColumnId).Value; lastVersion = result.GetSqlInt32(versionColumnId).Value; snapshotVersion = result.GetSqlInt32(snapshotVersionColumnId).Value; events.Add(this.serializationMethod.Deserialize(new XmlSerializedData(eventTypeId, result.GetSqlXml(eventDataColumnId).CreateReader()))); } return new EventStream(id, lastVersion, snapshotVersion, events); }
/// <summary> /// [To be supplied.] /// </summary> public void Refresh() { internalRecords = new System.Collections.ArrayList(); bool alreadyOpened = false; Params.spS_tblOrderItem_Display Param = new Params.spS_tblOrderItem_Display(true); Param.CommandTimeOut = this.selectCollectionCommandTimeOut; switch (this.lastKnownConnectionType) { case OlymarsDemo.DataClasses.ConnectionType.ConnectionString: Param.SetUpConnection(this.connectionString); break; case OlymarsDemo.DataClasses.ConnectionType.SqlConnection: Param.SetUpConnection(this.sqlConnection); alreadyOpened = (this.sqlConnection.State == System.Data.ConnectionState.Open); break; case OlymarsDemo.DataClasses.ConnectionType.SqlTransaction: Param.SetUpConnection(this.sqlTransaction); break; } if (!this.col_Oit_GuidOrderID.IsNull) { Param.Param_Oit_GuidOrderID = this.col_Oit_GuidOrderID; } if (!this.col_Oit_GuidProductID.IsNull) { Param.Param_Oit_GuidProductID = this.col_Oit_GuidProductID; } System.Data.SqlClient.SqlDataReader sqlDataReader = null; SPs.spS_tblOrderItem_Display Sp = new SPs.spS_tblOrderItem_Display(false); if (Sp.Execute(ref Param, out sqlDataReader)) { while (sqlDataReader.Read()) { tblOrderItem_Record record = null; switch (this.lastKnownConnectionType) { case OlymarsDemo.DataClasses.ConnectionType.ConnectionString: record = new tblOrderItem_Record(this.connectionString, sqlDataReader.GetSqlGuid(SPs.spS_tblOrderItem_Display.Resultset1.Fields.Column_ID1.ColumnIndex)); break; case OlymarsDemo.DataClasses.ConnectionType.SqlConnection: record = new tblOrderItem_Record(this.sqlConnection, sqlDataReader.GetSqlGuid(SPs.spS_tblOrderItem_Display.Resultset1.Fields.Column_ID1.ColumnIndex)); break; case OlymarsDemo.DataClasses.ConnectionType.SqlTransaction: record = new tblOrderItem_Record(this.sqlTransaction, sqlDataReader.GetSqlGuid(SPs.spS_tblOrderItem_Display.Resultset1.Fields.Column_ID1.ColumnIndex)); break; } record.UpdateCommandTimeOut = this.updateCommandTimeOut; record.SelectCommandTimeOut = this.selectCommandTimeOut; if (sqlDataReader.GetFieldType(SPs.spS_tblOrderItem_Display.Resultset1.Fields.Column_Display.ColumnIndex) == typeof(string)) { record.displayName = sqlDataReader.GetString(SPs.spS_tblOrderItem_Display.Resultset1.Fields.Column_Display.ColumnIndex); } else { record.displayName = sqlDataReader.GetValue(SPs.spS_tblOrderItem_Display.Resultset1.Fields.Column_Display.ColumnIndex).ToString(); } internalRecords.Add(record); } if (sqlDataReader != null && !sqlDataReader.IsClosed) { sqlDataReader.Close(); } CloseConnection(Sp.Connection, alreadyOpened); this.recordsAreLoaded = true; } else { if (sqlDataReader != null && !sqlDataReader.IsClosed) { sqlDataReader.Close(); } CloseConnection(Sp.Connection, alreadyOpened); this.recordsAreLoaded = false; throw new OlymarsDemo.DataClasses.CustomException(Param, "OlymarsDemo.BusinessComponents.tblOrderItem_Collection", "Refresh"); } }
/// <summary> /// [To be supplied.] /// </summary> /// <returns>[To be supplied.]</returns> public bool Refresh() { this.displayName = null; this.col_Oit_GuidOrderIDWasUpdated = false; this.col_Oit_GuidOrderIDWasSet = false; this.col_Oit_GuidOrderID = System.Data.SqlTypes.SqlGuid.Null; this.col_Oit_GuidProductIDWasUpdated = false; this.col_Oit_GuidProductIDWasSet = false; this.col_Oit_GuidProductID = System.Data.SqlTypes.SqlGuid.Null; this.col_Oit_LngAmountWasUpdated = false; this.col_Oit_LngAmountWasSet = false; this.col_Oit_LngAmount = System.Data.SqlTypes.SqlInt32.Null; bool alreadyOpened = false; Params.spS_tblOrderItem Param = new Params.spS_tblOrderItem(true); Param.CommandTimeOut = this.selectCommandTimeOut; switch (this.lastKnownConnectionType) { case OlymarsDemo.DataClasses.ConnectionType.ConnectionString: Param.SetUpConnection(this.connectionString); break; case OlymarsDemo.DataClasses.ConnectionType.SqlConnection: Param.SetUpConnection(this.sqlConnection); alreadyOpened = (this.sqlConnection.State == System.Data.ConnectionState.Open); break; case OlymarsDemo.DataClasses.ConnectionType.SqlTransaction: Param.SetUpConnection(this.sqlTransaction); break; } if (!this.col_Oit_GuidID.IsNull) { Param.Param_Oit_GuidID = this.col_Oit_GuidID; } System.Data.SqlClient.SqlDataReader sqlDataReader = null; SPs.spS_tblOrderItem Sp = new SPs.spS_tblOrderItem(false); if (Sp.Execute(ref Param, out sqlDataReader)) { if (sqlDataReader.Read()) { if (!sqlDataReader.IsDBNull(SPs.spS_tblOrderItem.Resultset1.Fields.Column_Oit_GuidOrderID.ColumnIndex)) { this.col_Oit_GuidOrderID = sqlDataReader.GetSqlGuid(SPs.spS_tblOrderItem.Resultset1.Fields.Column_Oit_GuidOrderID.ColumnIndex); } if (!sqlDataReader.IsDBNull(SPs.spS_tblOrderItem.Resultset1.Fields.Column_Oit_GuidProductID.ColumnIndex)) { this.col_Oit_GuidProductID = sqlDataReader.GetSqlGuid(SPs.spS_tblOrderItem.Resultset1.Fields.Column_Oit_GuidProductID.ColumnIndex); } if (!sqlDataReader.IsDBNull(SPs.spS_tblOrderItem.Resultset1.Fields.Column_Oit_LngAmount.ColumnIndex)) { this.col_Oit_LngAmount = sqlDataReader.GetSqlInt32(SPs.spS_tblOrderItem.Resultset1.Fields.Column_Oit_LngAmount.ColumnIndex); } if (sqlDataReader != null && !sqlDataReader.IsClosed) { sqlDataReader.Close(); } CloseConnection(Sp.Connection, alreadyOpened); this.recordIsLoaded = true; return(true); } else { if (sqlDataReader != null && !sqlDataReader.IsClosed) { sqlDataReader.Close(); } CloseConnection(Sp.Connection, alreadyOpened); this.recordIsLoaded = false; return(false); } } else { if (sqlDataReader != null && !sqlDataReader.IsClosed) { sqlDataReader.Close(); } CloseConnection(Sp.Connection, alreadyOpened); throw new OlymarsDemo.DataClasses.CustomException(Param, "OlymarsDemo.BusinessComponents.tblOrderItem_Record", "Refresh"); } }
public void GetGuidTest () { cmd.CommandText = "Select type_guid,id,convert(uniqueidentifier,null)"; cmd.CommandText += "from string_family where id=1"; reader = cmd.ExecuteReader (); reader.Read (); // Test for standard exceptions GetMethodTests("Guid"); // Test if data is returned correctly Assert.AreEqual (stringRow["type_guid"], reader.GetGuid(0), "#2 DataValidation Failed"); // Test for standard exceptions GetMethodTests("SqlGuid"); // Test if data is returned correctly Assert.AreEqual (stringRow["type_guid"], reader.GetSqlGuid(0).Value, "#4 DataValidation Failed"); reader.Close (); }