Beispiel #1
0
        private void Update(DbContext context, bool skipSelect)
        {
            var returned = PrepareUpdateSql(skipSelect);
            var sql      = SqlText.ToString();

            ExecSqlAndUpdateBack(sql, context, Entity, returned, ParameterValues.ToArray());
        }
Beispiel #2
0
        private async Task UpdateAsync(DbContext context, bool skipSelect)
        {
            var returned = PrepareUpdateSql(skipSelect);
            var sql      = SqlText.ToString();

            await ExecSqlAndUpdateBackAsync(sql, context, Entity, returned, ParameterValues.ToArray());
        }
Beispiel #3
0
 private void Update(DbContext context)
 {
     // _sb.AppendLine("SET NOCOUNT ON;");
     PrepareUpdateSql();
     var sql = SqlText.ToString();
     var tmp = context.Database.ExecuteSqlCommand(sql, ParameterValues.ToArray());
 }
        public int GetTotalNumberByFilter(ISearchViewModel searchViewModel)
        {
            var sqlString = GenerateSqlStringByFilter(searchViewModel, true);

            // get total number
            try
            {
                var totalNum = DbManager.SqlQuery <int>(sqlString, ParameterValues.ToArray()).First();
                return(totalNum);
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                return(0);
            }
        }
Beispiel #5
0
        private void Insert(DbContext context, bool skipSelect)
        {
            _parameters = new string[SqlColumns.Count];
            // var ts = DateTime.UtcNow;
            SqlText.AppendLine("SET NOCOUNT ON;");
            PrepareInsertSql();
            var returned = PrepareSelectSql(skipSelect);

            ExecSqlAndUpdateBack(SqlText.ToString(), context, Entity, returned, ParameterValues.ToArray());
            //Debug.WriteLine("  sql elapsed " + (DateTime.UtcNow - ts).TotalMilliseconds);

            /*
             *
             *  string sql = @"SET NOCOUNT ON;
             * INSERT INTO [RecipeNodes] ([ArticleId], [EnrichedArticleId], [IsActive], [IsDefault], [MigrationSourceId], [Name])
             * VALUES (@p0, @p1, @p2, @p3, @p4, @p5);
             * SELECT [Id]
             * FROM [RecipeNodes]
             * WHERE @@ROWCOUNT = 1 AND [Id] = scope_identity();";
             */
        }
Beispiel #6
0
        private void Insert(DbContext context)
        {
            _parameters = new string[SqlColumns.Length];
            // var ts = DateTime.UtcNow;
            SqlText.AppendLine("SET NOCOUNT ON;");
            PrepareInsertSql();
            var returned = PrepareSelectSql();

            if (returned != null)
            {
                using (var reader = context.Database.ExecuteReader(SqlText.ToString(), ParameterValues.ToArray()))
                {
                    while (reader.DbDataReader.Read())
                    {
                        var v = new object[reader.DbDataReader.FieldCount];
                        reader.DbDataReader.GetValues(v);
                        for (var index = 0; index < returned.Count; index++)
                        {
                            returned[index].ValueWriter.WritePropertyValue(Entity, v[index]);
                        }
                        break;
                    }
                }
            }
            else
            {
                var tmp = context.Database.ExecuteSqlCommand(SqlText.ToString(), ParameterValues.ToArray());
            }
            //Debug.WriteLine("  sql elapsed " + (DateTime.UtcNow - ts).TotalMilliseconds);

            /*
             *
             *  string sql = @"SET NOCOUNT ON;
             * INSERT INTO [RecipeNodes] ([ArticleId], [EnrichedArticleId], [IsActive], [IsDefault], [MigrationSourceId], [Name])
             * VALUES (@p0, @p1, @p2, @p3, @p4, @p5);
             * SELECT [Id]
             * FROM [RecipeNodes]
             * WHERE @@ROWCOUNT = 1 AND [Id] = scope_identity();";
             */
        }
Beispiel #7
0
 protected override IEnumerable <ISearchResultModel> GetResultIsLatestBySqlQuery(string sqlString)
 {
     return(DbManager.SqlQuery <SearchResultIsLatest>(sqlString, ParameterValues.ToArray()).ToList());
 }
Beispiel #8
0
        ///<summary>
        ///Executes a stored procedure and returns the result as a DataTable.
        ///</summary>
        public static DataTable Execute(string ConnectionName, string Procedure, params object[] ParameterValues)
        {
            PSOQuery Q = new PSOQuery(ConnectionName, Procedure, ParameterValues.ToArray());

            return(Execute(Q));
        }
Beispiel #9
0
 private void Delete(DbContext context, IReadOnlyDictionary <string, object> keys)
 {
     PrepareUpdateSql(keys);
     var sql = SqlText.ToString();
     var tmp = context.Database.ExecuteSqlCommand(sql, ParameterValues.ToArray());
 }