Join the social network of Tech Nerds, increase skill rank, get work, manage projects...
 
Node is saved as draft in My Content >> Draft
  • Saving image in Base64 into database

    • 0
    • 0
    • 0
    • 0
    • 0
    • 0
    • 0
    • 0
    • 169
    Comment on it

    In SQL server we have scenarios where we need to store image into the databse

    One way is to store image URL into the database by creating it into a folder

    Other way is to store entire image into the databse

    For doing that you need to create column in databse
     

    ColumnName    Type
     
    Image         varbinary(max)

    We will store image in byte format thts why we made it of binary type

     

    Public Function UpdateUserProfile(ByVal user As User) As UserResponse
            Dim reader As SqlDataReader
            Dim profileImagePath As String = String.Empty
            Dim isProfileImageUploaded As Boolean = False
            Dim userResponse As New UserResponse()
    
            Try
                Using sqlConnection As New SqlConnection(ConnectionString)
    
                    If sqlConnection.State = ConnectionState.Closed Then
                        sqlConnection.Open()
                    End If
    
                    ''If user.ProfileImageByteArray IsNot Nothing AndAlso user.ProfileImageByteArray.Length > 0 Then
                    ''    Try
                    ''        Dim memoryStream As New MemoryStream(user.ProfileImageByteArray)
                    ''        Dim fileStream As New FileStream(System.Web.Hosting.HostingEnvironment.MapPath("~/ProfileImages/") + user.AccessToken + ".png", FileMode.Create)
    
                    ''        memoryStream.WriteTo(fileStream)
    
                    ''        memoryStream.Close()
                    ''        fileStream.Close()
                    ''        fileStream.Dispose()
    
                    ''        profileImagePath = KnownConstants.ProfileImageBaseAddress + user.AccessToken + ".png"
                    ''        isProfileImageUploaded = True
                    ''    Catch ex As Exception
                    ''        Logger.LogException(ex)
    
                    ''        profileImagePath = KnownConstants.ProfileImageBaseAddress + KnownConstants.DefaultProfileImage
                    ''    End Try
                    ''End If
    
                    Dim parameterList As New List(Of SqlParameter)()
    
                    parameterList.Add(New SqlParameter("@AccessToken", user.AccessToken))
                    parameterList.Add(New SqlParameter("@FirstName", user.FirstName))
                    parameterList.Add(New SqlParameter("@LastName", user.LastName))
                    parameterList.Add(New SqlParameter("@ProfileImage", System.Convert.FromBase64String(user.ProfileImage)))
                    parameterList.Add(New SqlParameter("@JobRoleID", user.JobRoleID))
                    parameterList.Add(New SqlParameter("@CompanyID", user.CompanyID))
                    parameterList.Add(New SqlParameter("@Password", user.Password))
                    parameterList.Add(New SqlParameter("@PasswordSalt", Guid.NewGuid().ToString()))
    
                    reader = BaseRepository.ExecuteReader(sqlConnection, CommandType.StoredProcedure, "uspUpdateUserProfile", parameterList.ToArray())
    
                    If reader.HasRows Then
                        While reader.Read()
    
                            user.ID = If(reader("ID") IsNot Nothing, If(Not String.IsNullOrEmpty(Convert.ToString(reader("ID"))), Convert.ToInt32(Convert.ToString(reader("ID")).Trim()), 0), 0)
                            user.FirstName = If(reader("FirstName") IsNot Nothing, Convert.ToString(reader("FirstName")).Trim(), String.Empty)
                            user.LastName = If(reader("LastName") IsNot Nothing, Convert.ToString(reader("LastName")).Trim(), String.Empty)
                            user.ProfileImage = If(reader("ProfileImage") IsNot Nothing, Convert.ToBase64String(reader("ProfileImage")).Trim(), String.Empty)
                            user.JobRoleID = If(reader("JobRoleID") IsNot Nothing, Convert.ToString(reader("JobRoleID")).Trim(), String.Empty)
                            user.Email = If(reader("Email") IsNot Nothing, Convert.ToString(reader("Email")).Trim(), String.Empty)
                            user.CompanyID = If(reader("CompanyID") IsNot Nothing, Convert.ToString(reader("CompanyID")).Trim(), String.Empty)
                            user.Password = If(reader("Password") IsNot Nothing, Convert.ToString(reader("Password")).Trim(), String.Empty)
                            Exit While
                        End While
    
                        userResponse.Status = True
                        userResponse.Message = "Profile details successfully updated."
                    Else
                        userResponse.Status = False
                        userResponse.Message = KnownConstants.UnauthorizedMessage
                    End If
                End Using
            Catch ex As Exception
                Logger.LogException(ex)
    
                userResponse.Status = False
                userResponse.Message = "Error occurred while updating profile."
            End Try
    
            userResponse.data = user
            Return userResponse
        End Function

     

    So in this way we store Base 64 string in binary form

    For accessing and displaying image we reconvert bytes into base 64 string

     

    .net

 0 Comment(s)

Sign In
                           OR                           
                           OR                           
Register

Sign up using

                           OR                           
Forgot Password
Fill out the form below and instructions to reset your password will be emailed to you:
Reset Password
Fill out the form below and reset your password: