public void InsertExternalData(ProcessExternalDataEditDto dto) { if (dto == null) throw new ArgumentException(string.Format(CultureInfo.InvariantCulture, Resources.NullArguementException, "dto")); const string CommandText = @" INSERT INTO [dbo].[ExternalData] ( [ProcessId] ,[GuidId] ,[LastModifiedOn] ,[Name] ,[Expression] ,[ExternalDataConnectionName] ) VALUES ( @p_ProcessId ,@guid ,GETDATE() ,@name ,@Expression ,@ExternalDataConnectionName ) SET @id = SCOPE_IDENTITY();"; using (var cmd = new SqlCommand(CommandText)) { var idParam = cmd.Parameters.Add("@id", SqlDbType.Int); idParam.Direction = ParameterDirection.Output; cmd.Parameters.AddWithValue("@p_ProcessId", dto.ProcessId); cmd.Parameters.AddWithValue("@guid", dto.Guid); cmd.Parameters.AddWithValue("@name", dto.Name); cmd.Parameters.AddWithValue("@Expression", dto.Expression); cmd.Parameters.AddWithValue("@ExternalDataConnectionName", dto.ExternalDataConnectionName); var rowsAffected = Database.Execute(cmd); if (rowsAffected == 0) { throw new DBConcurrencyException(Resources.StaleDataException); } dto.Id = (int)idParam.Value; } }
public void UpdateExternalData(ProcessExternalDataEditDto parent) { if (parent == null) throw new ArgumentNullException(string.Format(CultureInfo.InvariantCulture, Resources.NullArguementException, "dto")); const string CommandText = @" UPDATE [dbo].[ExternalData] SET [GuidId] = @guid ,[LastModifiedOn] = GETDATE() ,[Name] = @name ,[Expression] = @Expression ,[ExternalDataConnectionName] = @ExternalDataConnectionName WHERE [Id] = @id;"; using (var cmd = new SqlCommand(CommandText)) { cmd.Parameters.AddWithValue("@id", parent.Id); cmd.Parameters.AddWithValue("@guid", parent.Guid); cmd.Parameters.AddWithValue("@name", parent.Name); cmd.Parameters.AddWithValue("@Expression", parent.Expression); cmd.Parameters.AddWithValue("@ExternalDataConnectionName", parent.ExternalDataConnectionName); var rowsAffected = Database.Execute(cmd); if (rowsAffected == 0) { throw new DBConcurrencyException(Resources.StaleDataException); } } }
/// <summary> /// Reads External Data. /// </summary> /// <param name="process">The process.</param> /// <param name="sr">The reader.</param> private static void ReadExternalData(ProcessEditDto process, SafeDataReader sr) { sr.NextResult(); while (sr.Read()) { var dto = new ProcessExternalDataEditDto { Id = sr.GetInt32(0), ProcessId = sr.GetInt32(1), Guid = sr.GetGuid(2), Name = sr.GetString(3), Expression = sr.GetString(4), ExternalDataConnectionName = sr.GetString(5) }; process.ExternalDataList.Add(dto); } }