コード例 #1
0
ファイル: EDCDal.cs プロジェクト: mparsin/Elements
        public void InsertDataVariablesEdit(EDCDataVariablesEditDto dto)
        {
            if (dto == null)
                throw new ArgumentException(string.Format(CultureInfo.InvariantCulture, Resources.NullArguementException, "dto"));

            const string Sql =
                @"
INSERT INTO [dbo].[EDCDataVariables]
(
     [GuidId]
    ,[LastModifiedOn]
    ,[EDCId]
    ,[VariableName]
    ,[VariableSystemName]
    ,[VariableDataType]   
)
VALUES
(
     @guid
    ,GETDATE()
    ,@edcId  
    ,@variableName
    ,@variableSystemName
    ,@variableDataType  
);

SELECT [Id]
FROM   [dbo].[EDCDataVariables]
WHERE  [Id] = SCOPE_IDENTITY()
";

            try
            {
                using (var ctx = ConnectionManager<SqlConnection>.GetManager(Database.VeyronMeta, false))
                {
                    var cn = ctx.Connection;

                    using (var cmd = new SqlCommand(Sql, cn))
                    {
                        cmd.Parameters.AddWithValue("@guid", dto.Guid);
                        cmd.Parameters.AddWithValue("@edcId", dto.EDCId);
                        cmd.Parameters.AddWithValue("@variableName", dto.VariableName);
                        cmd.Parameters.AddWithValue("@variableSystemName", dto.VariableSystemName);
                        cmd.Parameters.AddWithValue("@variableDataType", dto.VariableDataType.ToString());
                        dto.Id = (int)cmd.ExecuteScalar();
                    }
                }
            }

            catch (Exception ex)
            {
                throw new ArgumentException(ex.Data.ToString());
            }
        }
コード例 #2
0
ファイル: EDCDal.cs プロジェクト: mparsin/Elements
        public void UpdateDataVariablesEdit(EDCDataVariablesEditDto dto)
        {
            if (dto == null) throw new ArgumentException(string.Format(CultureInfo.InvariantCulture, Resources.NullArguementException, "dto"));

            const string Sql =
                @"
UPDATE [dbo].[EDCDataVariables]
SET
     [GuidId] = @guid
    ,[LastModifiedOn] = GETDATE()
    ,[EDCId] = @eDCId 
    ,[VariableName] = @variableName
    ,[VariableSystemName] = @variableSystemName
    ,[VariableDataType] = @variableDataType   
WHERE [Id] = @id;
";

            using (var ctx = ConnectionManager<SqlConnection>.GetManager(Database.VeyronMeta, false))
            {
                var cn = ctx.Connection;

                using (var cmd = new SqlCommand(Sql, cn))
                {
                    cmd.Parameters.AddWithValue("@id", dto.Id);

                    cmd.Parameters.AddWithValue("@guid", dto.Guid);
                    cmd.Parameters.AddWithValue("@eDCId", dto.EDCId);
                    cmd.Parameters.AddWithValue("@variableName", dto.VariableName);
                    cmd.Parameters.AddWithValue("@variableSystemName", dto.VariableSystemName);
                    cmd.Parameters.AddWithValue("@variableDataType", dto.VariableDataType.ToString());

                    var rowsAffetcted = cmd.ExecuteNonQuery();
                    if (rowsAffetcted == 0)
                        throw new DBConcurrencyException(
                            "The entity is out of date on the client. Please update the entity and try again. This could also be thrown if the sql statement failed to execute.");
                }
            }
        }
コード例 #3
0
ファイル: EDCDal.cs プロジェクト: mparsin/Elements
        private static void FetchDataVariableList(SqlConnection connection, EDCEditDto dto)
        {
            const string Sql =
               @"
SELECT
     [Id]
    ,[GuidId]   
    ,[EDCId]
    ,[VariableName]
    ,[VariableSystemName]
    ,[VariableDataType] 
FROM
    [dbo].[EDCDataVariables]
WHERE [EDCId] = @edcId;
";
            using (var cmd = new SqlCommand(Sql, connection))
            {
                cmd.Parameters.AddWithValue("@edcId", dto.Id);

                try
                {
                    using (var reader = new SafeDataReader(cmd.ExecuteReader()))
                    {
                        while (reader.Read())
                        {
                            var dataVariableType = DataVariablesType.None;
                            var type = reader.GetString(5);

                            if (!string.IsNullOrWhiteSpace(type))
                            {
                                if (type == "Double")
                                {
                                    dataVariableType = DataVariablesType.Decimal;
                                }
                                else
                                {
                                    dataVariableType = !string.IsNullOrEmpty(reader.GetString(5))
                                        ? (DataVariablesType)Enum.Parse(typeof(DataVariablesType), reader.GetString(5))
                                        : DataVariablesType.None;
                                }
                            }

                            var edcDataVariablesEditDto = new EDCDataVariablesEditDto
                            {
                                Id = reader.GetInt(0),
                                Guid = reader.GetGuid(1),
                                EDCId = reader.GetInt32(2),
                                VariableName = reader.GetString(3),
                                VariableSystemName = reader.GetString(4),
                                VariableDataType = dataVariableType
                            };

                            dto.DataVariableList.Add(edcDataVariablesEditDto);
                        }
                    }
                }
                catch (Exception ex)
                {
                    throw new ArgumentException(ex.Data.ToString());
                }
            }
        }