コード例 #1
0
        /// <summary>
        /// Fixed:
        /// </summary>
        public Error.Types UpdateSiteImage(byte[] data)
        {
            BinaryType = "SiteImage";
            var imageData = new Libraries.Images.ImageData(
                data,
                ReferenceId,
                Libraries.Images.ImageData.Types.SiteImage);

            switch (Parameters.BinaryStorage.Provider)
            {
            case "Local": imageData.WriteToLocal(); break;

            default:
                Bin       = imageData.ReSizeBytes(Libraries.Images.ImageData.SizeTypes.Regular);
                Thumbnail = imageData.ReSizeBytes(
                    Libraries.Images.ImageData.SizeTypes.Thumbnail);
                Icon = imageData.ReSizeBytes(Libraries.Images.ImageData.SizeTypes.Icon);
                Rds.ExecuteNonQuery(transactional: true, statements:
                                    Rds.UpdateOrInsertBinaries(
                                        selectIdentity: true,
                                        where : Rds.BinariesWhere()
                                        .ReferenceId(ReferenceId)
                                        .BinaryType("SiteImage"),
                                        param: Rds.BinariesParamDefault(this, setDefault: true)));
                break;
            }
            return(Error.Types.None);
        }
コード例 #2
0
 private List <SqlStatement> UpdateStatements(
     List <SqlStatement> statements,
     DateTime timestamp,
     SqlParamCollection param,
     bool otherInitValue = false,
     List <SqlStatement> additionalStatements = null)
 {
     var where = Rds.BinariesWhereDefault(this)
                 .UpdatedTime(timestamp, _using: timestamp.InRange());
     if (VerUp)
     {
         statements.Add(CopyToStatement(where, Sqls.TableTypes.History));
         Ver++;
     }
     statements.AddRange(new List <SqlStatement>
     {
         Rds.UpdateBinaries(
             where : where,
             param: param ?? Rds.BinariesParamDefault(this, otherInitValue: otherInitValue),
             countRecord: true)
     });
     if (additionalStatements?.Any() == true)
     {
         statements.AddRange(additionalStatements);
     }
     return(statements);
 }
コード例 #3
0
        public ErrorData UpdateOrCreate(
            Context context,
            SiteSettings ss,
            SqlWhereCollection where = null,
            SqlParamCollection param = null)
        {
            SetBySession(context: context);
            var statements = new List <SqlStatement>
            {
                Rds.UpdateOrInsertBinaries(
                    where : where ?? Rds.BinariesWhereDefault(
                        context: context,
                        binaryModel: this),
                    param: param ?? Rds.BinariesParamDefault(
                        context: context,
                        ss: ss,
                        binaryModel: this,
                        setDefault: true))
            };
            var response = Repository.ExecuteScalar_response(
                context: context,
                transactional: true,
                selectIdentity: true,
                statements: statements.ToArray());

            BinaryId = (response.Id ?? BinaryId).ToLong();
            Get(context: context);
            return(new ErrorData(type: Error.Types.None));
        }
コード例 #4
0
        /// <summary>
        /// Fixed:
        /// </summary>
        public Error.Types UpdateTenantImage(Context context, byte[] bin)
        {
            BinaryType = "TenantImage";
            var imageData = new Libraries.Images.ImageData(
                bin,
                ReferenceId,
                Libraries.Images.ImageData.Types.TenantImage);

            switch (Parameters.BinaryStorage.Provider)
            {
            case "Local": imageData.WriteToLocal(); break;

            default:
                Bin = imageData.ReSizeBytes(Libraries.Images.ImageData.SizeTypes.Logo);
                Rds.ExecuteNonQuery(
                    context: context,
                    transactional: true,
                    statements: Rds.UpdateOrInsertBinaries(
                        where : Rds.BinariesWhere()
                        .ReferenceId(ReferenceId)
                        .BinaryType("TenantImage"),
                        param: Rds.BinariesParamDefault(
                            context: context,
                            binaryModel: this,
                            setDefault: true)));
                break;
            }
            return(Error.Types.None);
        }
コード例 #5
0
 private List <SqlStatement> UpdateStatements(
     Context context,
     SiteSettings ss,
     string dataTableName     = null,
     SqlWhereCollection where = null,
     SqlParamCollection param = null,
     bool otherInitValue      = false)
 {
     return(new List <SqlStatement>
     {
         Rds.UpdateBinaries(
             dataTableName: dataTableName,
             where : where,
             param: param ?? Rds.BinariesParamDefault(
                 context: context,
                 ss: ss,
                 binaryModel: this,
                 otherInitValue: otherInitValue)),
         new SqlStatement(Def.Sql.IfConflicted.Params(BinaryId))
         {
             IfConflicted = true,
             Id = BinaryId
         }
     });
 }
コード例 #6
0
        public List <SqlStatement> CreateStatements(
            Context context,
            SiteSettings ss,
            string dataTableName      = null,
            Sqls.TableTypes tableType = Sqls.TableTypes.Normal,
            SqlParamCollection param  = null,
            bool otherInitValue       = false)
        {
            var statements = new List <SqlStatement>();

            statements.AddRange(new List <SqlStatement>
            {
                Rds.InsertBinaries(
                    dataTableName: dataTableName,
                    tableType: tableType,
                    selectIdentity: true,
                    param: param ?? Rds.BinariesParamDefault(
                        context: context,
                        ss: ss,
                        binaryModel: this,
                        setDefault: true,
                        otherInitValue: otherInitValue))
            });
            return(statements);
        }
コード例 #7
0
 public List <SqlStatement> CreateStatements(
     Sqls.TableTypes tableType = Sqls.TableTypes.Normal,
     SqlParamCollection param  = null,
     bool paramAll             = false)
 {
     return(new List <SqlStatement>
     {
         Rds.InsertBinaries(
             tableType: tableType,
             selectIdentity: true,
             param: param ?? Rds.BinariesParamDefault(
                 this, setDefault: true, paramAll: paramAll))
     });
 }
コード例 #8
0
        public List <SqlStatement> UpdateStatements(
            SqlParamCollection param, bool paramAll = false)
        {
            var timestamp = Timestamp.ToDateTime();

            return(new List <SqlStatement>
            {
                Rds.UpdateBinaries(
                    verUp: VerUp,
                    where : Rds.BinariesWhereDefault(this)
                    .UpdatedTime(timestamp, _using: timestamp.InRange()),
                    param: param ?? Rds.BinariesParamDefault(this, paramAll: paramAll),
                    countRecord: true)
            });
        }
コード例 #9
0
 public List <SqlStatement> CreateStatements(
     List <SqlStatement> statements,
     Sqls.TableTypes tableType = Sqls.TableTypes.Normal,
     SqlParamCollection param  = null,
     bool otherInitValue       = false)
 {
     statements.AddRange(new List <SqlStatement>
     {
         Rds.InsertBinaries(
             tableType: tableType,
             selectIdentity: true,
             param: param ?? Rds.BinariesParamDefault(
                 this, setDefault: true, otherInitValue: otherInitValue))
     });
     return(statements);
 }
コード例 #10
0
        public Error.Types UpdateOrCreate(
            RdsUser rdsUser          = null,
            SqlWhereCollection where = null,
            SqlParamCollection param = null)
        {
            SetBySession();
            var statements = new List <SqlStatement>
            {
                Rds.UpdateOrInsertBinaries(
                    selectIdentity: true,
                    where : where ?? Rds.BinariesWhereDefault(this),
                    param: param ?? Rds.BinariesParamDefault(this, setDefault: true))
            };
            var newId = Rds.ExecuteScalar_long(
                rdsUser: rdsUser,
                transactional: true,
                statements: statements.ToArray());

            BinaryId = newId != 0 ? newId : BinaryId;
            Get();
            return(Error.Types.None);
        }
コード例 #11
0
 private List <SqlStatement> UpdateStatements(
     List <SqlStatement> statements,
     DateTime timestamp,
     SqlParamCollection param,
     bool paramAll = false,
     List <SqlStatement> additionalStatements = null)
 {
     statements.AddRange(new List <SqlStatement>
     {
         Rds.UpdateBinaries(
             verUp: VerUp,
             where : Rds.BinariesWhereDefault(this)
             .UpdatedTime(timestamp, _using: timestamp.InRange()),
             param: param ?? Rds.BinariesParamDefault(this, paramAll: paramAll),
             countRecord: true)
     });
     if (additionalStatements?.Any() == true)
     {
         statements.AddRange(additionalStatements);
     }
     return(statements);
 }
コード例 #12
0
        /// <summary>
        /// Fixed:
        /// </summary>
        public Error.Types UpdateSiteImage(
            Context context,
            SiteSettings ss,
            byte[] bin)
        {
            BinaryType = "SiteImage";
            var imageData = new Libraries.Images.ImageData(
                bin,
                ReferenceId,
                Libraries.Images.ImageData.Types.SiteImage);

            switch (Parameters.BinaryStorage.GetSiteImageProvider())
            {
            case "Local": imageData.WriteToLocal(); break;

            default:
                Bin       = imageData.ReSizeBytes(Libraries.Images.ImageData.SizeTypes.Regular);
                Thumbnail = imageData.ReSizeBytes(
                    Libraries.Images.ImageData.SizeTypes.Thumbnail);
                Icon        = imageData.ReSizeBytes(Libraries.Images.ImageData.SizeTypes.Icon);
                ContentType = "image/png";
                Repository.ExecuteNonQuery(
                    context: context,
                    transactional: true,
                    statements: Rds.UpdateOrInsertBinaries(
                        where : Rds.BinariesWhere()
                        .ReferenceId(ReferenceId)
                        .BinaryType("SiteImage"),
                        param: Rds.BinariesParamDefault(
                            context: context,
                            ss: ss,
                            binaryModel: this,
                            setDefault: true)));
                break;
            }
            return(Error.Types.None);
        }