Download the full SlickUpload package. This package is free, fully functional and contains many example projects with full VB.NET and C# source code, in WebForms, ASP.NET AJAX, ASP.NET MVC and Razor view engines.
SlickUpload is free for personal, nonprofit, educational, and open source use, accompanied by "Powered By SlickUpload" branding. For commercial sites, or to remove the branding, purchase a license.
Download Latest Version: SlickUpload 6.1.7 - 05 January 2012
NOTE: There is currently a bug in the later versions of Chrome which causes the browser to crash after the user selects their files. To fix this issue, you will need to download this file and put it somewhere on your site:
slickupload.js
You will then need to update the SlickUpload section of the web.config to point to this file using the scriptUrl attribute like so:
<slickUpload scriptUrl="/scripts/slickupload.js">
(required)
Old Version Archive
The last releases of older versions have been archived for legacy purposes:
SlickUpload 5 Archive
» download: SlickUpload 5.5.11 - 15 Febrary 2011
» documentation: SlickUpload 5 Documentation Archive
SlickUpload 4 Archive
» download: SlickUpload 4.3.2 - 26 May 2009
» documentation: SlickUpload 4 Documentation Archive
SlickUpload 3 Archive
» download: SlickUpload 3.6 - 05 November 2007
Version History
Version 6.1.7 - 05 January 2012
Changes:
- Added functionality to disable multiple file selection when MaxFiles=1
- Fixed issue with SlickUpload controls hosted on multiple UpdatePanels/ModalPopupExtenders simultaneously
- Fixed regression in 6.1.5 with upload session serialization/deserialization
Version 6.1.6 - 02 January 2012
Changes:
- Added support for https uploads to S3, made https upload the default
- Enhanced drop zone manager, fixed bugs with drag+drop in recent versions of Firefox
- Added filtering to eliminate folder drops and zero length files
- Added file list form items to default AJAX completion body
- Fixed regression in 6.1.5 causing infrequent HTML5 progress updates for larger files
Version 6.1.5 - 27 December 2011
Changes:
- Enhanced S3 upload error handling
- Enhanced support for high latency connections and lag spikes
- Made speed and time remaining calculations more accurate
- Added filtering for invalid characters in upload file names
- Fixed potential issue with multiple css classes
- Fixed state issue with uploads that don't use the SlickUpload client controls
- Fixed issue with injection on cassini
- Fixed issue with ASP.NET inherited configuration clearing defaultProfile
Version 6.1.4 - 21 November 2011
Changes:
- Enhanced error handling and cancellation netcode
- Increased SessionStateSessionStorageProvider timeout
- Fixed serialization issues with DatabaseSessionStorageProviderBase and derived session storage providers
- Fixed issue when onFormSubmitted called with no event
Version 6.1.3 - 2 November 2011
Changes:
- Fixed regression with upload data passing
- Fixed issue with error display in IE
Version 6.1.2 - 27 October 2011
Changes:
- Optimized client page load event detection to speed initial SlickUpload control display
- Increased internal connection limit for SessionStateSessionStorageProvider
- Added S3 error parsing, throwing typed S3Exceptions
- Added support for partial page postbacks without a trigger control
- Added functionality to prevent file drag/drop on IE to keep the page from navigating
- Fixed issue with unskinned FileSelector template
- Fixed client netcode timeout issue on high latency connections
- Fixed server timeout issue on high latency connections
- Fixed issue with S3 bucket names with non-lowercase names
Version 6.1.1 - 29 September 2011
Changes:
- Added support for FileNameMethod.GuidWithExtension for the FileUploadStreamProvider
- Fixed issue with manually started uploads from <a> tags when AutoUploadOnSubmit=true
- Fixed conflict with jQuery unobtrusive validation
Version 6.1 - 26 September 2011
Changes:
- Added support for streaming to S3
- Enhanced error checking and support
- Added support for Firefox 7
- Upgraded InProcSessionStorageProvider to use ReaderWriterLockSlim on .NET 3.5+
- Fixed sample styling in IE 6
- Fixed issue with IE < 9 and Alpha filter disabled (switches to downlevel mode)
- Fixed issue with IE < 9 and ATI Alpha filter bug (uses smaller opacity area)
- Fixed issue with skinned element dimensions being set by inherited css
- Fixed issue with file cancel at a certain point during uploads causing subsequent files to stall
- Fixed issue with exception during cleanup
- Fixed issue with Firefox 3.6 hanging after uploading extremely small files
Version 6.0.7 - 6 September 2011
Changes:
- Added support for passing information through the SlickUpload process
- Fixed issue with SlickUpload on a page with a ScriptManager but no UpdatePanel
- Fixed issue with Firefox 3.5 being detected as drag-drop capable
Version 6.0.6 - 30 August 2011
Changes:
- Added Quickstart samples
- Added support for running in an ASP.NET AJAX UpdatePanel with AutoUploadOnSubmit="true"
- Added support for Microsoft MVC AJAX and Ajax.BeginForm
- Added diagnostic handler for testing
- Fixed latency timeout issues
- Fixed issue with starting an upload in the file added event
- Fixed several styling/rendering issues
- Fixed SessionStateSessionStorageProvider serialization issue
Version 6.0.5 - 18 August 2011
Changes:
- Added SessionStateSessionStorageProvider for storing upload session information in SessionState
- Added AdaptiveSessionStorageProvider as the default session storage provider
- Added UploadFile parameter to IUploadStreamProvider.CloseWriteStream [BREAKING CHANGE]
- Added handleRequests and scriptUrl attributes to the slickUpload web.config section
- Added better exception messages when providers cannot be constructed
- Added UploadedFile.FileSelectorId property
- Added UploadConnector.CompletionMethod, UploadConnector.CompletionBody, and UploadConnector.CompletionContentType properties to support AJAX completion and response
- Enhanced progress handler to return UploadedFile.Data to client
- Disabled multiselect for Safari 5.1 Windows to work around Safari bug in that version
- Tweaked dragleave detection to better handle movement
- Enhanced client Guid generation
- Added PercentCompleteText to FileList supported templates
- Added set_CompletionBody to allow sending information to an upload completion handler
- Fixed ASP.NET AJAX issues in certain circumstances
Version 6.0.4 - 5 August 2011
Changes:
- Added the CustomSqlServer sample
- Added VarBinary(MAX) support to the SqlClientUploadStreamProvider
- Refactored SqlFileStreamUploadStreamProvider into the SqlClientUploadStreamProvider. If you're currently using the SqlFileStream provider, switch to SqlClient and set dataType="FileStream". [BREAKING CHANGE]
- Enhanced error detection, particularly during size calculation
- Added UploadProgressElement support to FileList display
Version 6.0.3 - 22 July 2011
Changes:
- Enhanced CustomFileName sample to use data passed from the page to determine the storage folder
- Added support for Android 2.2+
- Updated unsupported browser detection
- Fixed cancel issue on some browsers
- Fixed id search to remove GridView id generation
Version 6.0.2 - 8 July 2011
Changes:
- Added the Post Processing sample
- Added the Custom UploadStreamProvider sample
- Fixed folder selector to hide during upload completion
- Fixed element.click() triggering for links in Firefox 5
Version 6.0.1 - 1 July 2011
Changes:
- Added the Slick sample
- Renamed the Overview sample to Validation sample
- Changed kw.UploadConnector.complete() call to set autoCompleteAfterLastFile=true if files are still uploading
- Added additional drag over functionality for css classes (kw-dragging, kw-dragover)
- Added kw.FileList.getItemElementById() method to get a file list element for a given file id
- Fixed file item extension css class to be always lower case
- Fixed dll load exception with the SlickUpload .NET 3.5 build on machines where MVC wasn't installed
Version 6.0 - 24 June 2011
Changes:
- Multiple file selection and drag/drop in browsers that support HTML5 file API (currently this is supported by recent versions of Chrome, Firefox, and Safari)
- Folder selection in browsers that support it (currently this is supported by recent versions of Chrome)
- GMail style individual file upload in all browsers
- Rich client API for AJAX uploads
- Simplified configuration
- Added upload profiles to make configuring multiple upload pages easy
- Reworked API with 3 integration modes
- WebForms controls
- ASP.NET MVC helpers
- ASP.NET MVC Razor support
- jQuery style javascript client API
- Optimized MIME parser for less CPU usage with many simultaneous uploads
- Client side file size checking and display on all browsers
- Rewritten button skinning
- Better error handling and diagnostics
Version 5.5.11 - 15 February 2011
Changes:
- Fixed issue with AutoPostBackAfterUpload=false and HasPostProcessStep=true
- Fixed issue with UploadUrl containing ?, added set_UploadUrl method to allow setting UploadUrl on the fly
- Fixed issue with form action not being reset when AutoPostBackAfterUpload=false
- Fixed issue in wizard control designer
- Fixed issue with IE9 RC and iframe creation
Version 5.5.10 - 28 December 2010
Changes:
- Fixed issue with upload parser rejecting valid uploads in certain rare cases
Version 5.5.9 - 01 December 2010
Changes:
- Added kw.SlickUpload.get_UploadId() and kw.UploadConnector.get_UploadId() methods
Version 5.5.8 - 08 November 2010
Changes:
- Fixed issue with wasCancelled always being false when AutoPostBackAfterUpload=false
- Fixed issue with isValidExtension population in OnFileAdding
- Fixed issue with removing a file in OnFileAdded
- Fixed issue with Ajax.BeginForm
Version 5.5.7 - 25 October 2010
Changes:
- Fixed issue with SlickUpload inside iframes
- Made UploadStreamProviderBase.CloseOutputStream virtual
- Added support for tracking link postback clicks
Version 5.5.6 - 03 September 2010
Changes:
- Added support for Ajax.BeginForm
- Fixed issue causing multiple UploadProgressDisplay instance error inside UpdatePanel and Panel
Version 5.5.5 - 19 August 2010
Changes:
- Removed isComplete parameter from UpdatePostProcessStatus. Setting completion is now done automatically.
- Many various and miscellaneous tweaks and fixes
Version 5.5.3 - 13 May 2010
Changes:
- Switched Opera to downlevel mode to solve onchange bug in certain layouts
- Fixed issue with submitting after submit button has been disabled in Firefox
Version 5.5.2 - 23 April 2010
Changes:
- Fixed issue with extra window opening in certain circumstances on IE6/IE7
- Fixed issue with submitting after submit button has been disabled
- Fixed issue where target iframe could not be removed
- Fixed issue with designer and UpdatePanel
Version 5.5.1 - 05 April 2010
Changes:
- Added support for custom operations around stream close in an UploadStreamProvider. Inherit from UploadStreamProviderBase. [BREAKING CHANGE]
- Removed cursor setting on FileSelector so it can be set using CSS
- Added support for cross-domain uploads
- Improved and fixed uplevel FileSelector
- Fixed issue with ASP.NET AJAX when some controls are in an UpdatePanel, some are outside, and some controls are invisible initially and made visible on a partial postback
Version 5.5 - 25 February 2010
Changes:
- Added support for setting progress url
- Added support for multiple visible files in the downlevel template
- Added FileSelector OnFileAdding event to allow validation to be performed before a file is selected
- Improved ASP.NET AJAX support
- Improved stability, handled several potential edge case bugs
- Removed FileList OnFileAdded and OnFileRemoved events. Use FileSelector events instead. [BREAKING CHANGE]
- Removed FileList get_Files method. Use FileSelector get_Files method instead. [BREAKING CHANGE]
- Fixed keyboard accessibility on downlevel template
Version 5.4.2 - 25 January 2010
Changes:
- Fixed issue with ASP.NET AJAX in certain scenarios
Version 5.4.1 - 12 January 2010
Changes:
- Added support for setting MaxFiles in client script
- Added support for setting ValidExtensions and InvalidExtensionMessage in client script
- Added support for using stored procedures with the SqlStatusManager and SqlUploadStreamProvider
- Fixed issue with ScriptManager without UpdatePanel
- Fixed issue with older Firefox versions and uplevel skinning
- Fixed issue with Server.Transfer between two pages with SlickUpload controls
- Fixed issue with IE6 and HTTPS
- Removed FileList remove_File() and clear() methods. Use FileSelector methods instead. [BREAKING CHANGE]
Version 5.3.3 - 08 October 2009
Changes:
- Fixed blank SlickUpload.axd download issue on certain versions of Safari on Mac
Version 5.3.2 - 07 October 2009
Changes:
- Enhanced uplevel skinning functionality
- Added hover support for uplevel skinning
- Fixed issue with Safari on Mac
Version 5.3.1 - 24 September 2009
Changes:
- Added logic to not show progress bar if no files were selected
- Added additional escaping for progress JSON
- Removed extraneous outline on skin
- Fixed issue with OnClientFileComplete
- Fixed issue with reading settings on ASP.NET application init on IIS 7
- Fixed localization issue with GenerateLocalResource
- Fixed duplicate event firing issue with certain builds of IE
Version 5.3 - 11 July 2009
Changes:
- Reworked file selection skinning support
- Added support for Opera as an uplevel browser
- Added support for databinding in file template
- Added workarounds for several ASP.NET 1.1 bugs
- Fixed remove issue, clear issue
- Fixed file selector quirks mode issue
- Removed updateDisplay method as new skinning mode handles visibility without it
Version 5.2.8 - 23 June 2009
Changes:
- Added updateDisplay method to support initially display:none scenario
- Fixed issue with SlickUpload being dynamically added on an async postback
Version 5.2.7 - 19 June 2009
Changes:
- Fixed issue with SlickUpload rendering invisible inside UpdatePanel and then becoming visible on an async postback
Version 5.2.6 - 15 June 2009
Changes:
- Added UploadedFile.FileSelectorId property
- Improved support for SlickUpload control and FileSelector control on the same page
Version 5.2.5 - 11 June 2009
Changes:
- Added clustered sample
- Added VB versions of ASP.NET AJAX sample and ASP.NET MVC sample
- Improved SQL and S3 samples
- Fixed status manager serialization issue
- Fixed IE7 update panel related issue
Version 5.2.4 - 5 June 2009
Changes:
- Added support for the SlickUpload control inside an UpdatePanel
- Added support for multiple uploads before postback
- Tweaked branding
- Enhanced UploadStreamProvider storage
Version 5.2.3 - 1 June 2009
Changes:
- Fixed MaxFiles=1 regression and related Firefox remove issue
- Fixed IIS 7 integrated mode with simultaneous requests issue
Version 5.2.2 - 1 June 2009
Changes:
- Added quick start guide
- Updated getting started guide
- Improved installer
Version 5.2.1 - 21 May 2009
Changes:
- Added auto enctype setting for MVC forms
- Fixed designer templates and display
- Fixed submit buttons for cancel calls
- Fixed issue with simultaneous uploads and location based config
- Fixed issue with adding file parts simultaneous with a cancel
Version 5.2 - 11 May 2009
Changes:
- Added uplevel FileSelector template to skin file selection
- Changed SelectorHtmlTemplate to DownlevelSelectorTemplate and selector HtmlTemplate to DownlevelTemplate
- Fixed issue with typing invalid file names in file box in IE
Version 5.1.2 - 27 Apr 2009
Changes:
- Fixed custom progress issue
Version 5.1.1 - 24 Apr 2009
Changes:
- Added additional support for ASP.NET MVC
- Added ASP.NET MVC sample
- Added ASP.NET AJAX sample
- Added progress templating/file list templating sample
- Added modal progress sample
- Added localization sample
- Fixed UploadConnector/SlickUpload control BeforeUpload event
- Fixed seperate progress display issue
Version 5.1 - 13 Apr 2009
Changes:
- Added cancel confirmation message on navigate during upload
- Added method to access additional controls templated into FileList
- Added internationalization and RTL support
- Added ProgressInterval property to control progress poll interval
- Optimized status manager to remove extraneous writes
- Fixed cancel click timing heisenbug w/ IE 8
- Fixed IE6 xml issue
Version 5.0.1 - 26 Mar 2009
Changes:
- Optimized SqlClient status manager to reduce reads
- Tweaked branding to work on https without messages
- Fixed submit() bug when called outside of postback and AutoUploadOnPostBack=true
- Fixed SqlClient status manager conflict with postprocessing status
- Fixed MaxFiles=1 issue on remove
Version 5.0 - 12 Mar 2009
Changes:
- Added SlickUpload control, and related controls (FileSelector, FileList, UploadConnector, UploadProgressDisplay)
- Added support for custom templating
- Added support for additional fields per file
- Added support for maximum number of files
- Added support for extension validation
- Added postprocessing step with progress
- Added full client object model with properties and events
- Improved stability/cross browser compatibility
- Added ASP.NET MVC support
- Deprecated UploadManager control
Version 4.3.2 - 21 May 2009
Changes:
- Fixed configuration bug with multiple HttpApplication instances
Version 4.3.1 - 26 Mar 2009
Changes:
- Removed duplicate script include under certain circumstances
- Added logic to only fire UploadComplete when an upload has actually been initiated
Version 4.3 - 27 Jan 2009
Changes:
- Added support for files up to 4 GB
- Simplified sample config
Version 4.2.2 - 20 Jan 2009
Changes:
- Fixed multiple file upload location provider configuration using location based configuration
Version 4.2.1 - 11 Jan 2009
Changes:
- Fixed postback control regression from ASP.NET AJAX support
Version 4.2 - 24 Dec 2008
Changes:
- Added Amazon S3 samples (.NET 2.0 only)
Version 4.1.1 - 30 Oct 2008
Changes:
- Fixed upload failures when an async ASP.NET AJAX postback occurs during an upload
- Fixed files not being cleaned up in certain instances when uploads are abruptly terminated
- Added UploadInformation property to pass additional information with an upload
- Added connectionStringName property to SQL configuration
Version 4.1 - 16 Sep 2008
Changes:
- Revamped ASP.NET AJAX support
- Added support for running in ASP.NET AJAX 1.0 Extensions pages
- Fixed dupe event firing on some samples
- Fixed handlers that use session state and Session_Start
Version 4.0.4 - 31 Jul 2008
Changes:
- Added support for running in ASP.NET AJAX pages
- Fixed iframe url encoding in certain cases
Version 4.0.3 - 14 Jul 2008
Changes:
- Fixed IIS7 field loading and injection issue
- Fixed handler session state issue
Version 4.0.2 - 02 Jun 2008
Changes:
- Added client side progress event
- Fixed hang/no cleanup on slow connections
Version 4.0.1 - 01 May 2008
Changes:
- Fixed Firefox hang on tiny files
Version 4.0 - 29 Apr 2008
Changes:
- Optimized provider/filter management
- Added support for location based configuration
- Enhanced error handling scenarios and detail
- Fixed cancel button during hung uploads
- Better back button handling
- Added slickupload form handler
- Miscellaneous bug fixes and enhancements
Version 3.6 - 05 Nov 2007
Changes:
- Optimized AJAX handling
- Added SlickUpload_ClearFiles function to clear the files on the UploadManager
- Added UploadManager.AutoUploadOnPostBack property to allow custom submission
Version 3.5.6 - 15 Sep 2007
Changes:
- Added support for getting the identity value created by a SqlClientUploadStreamProvider
- Fixed .NET 1.x bug where invisible controls would still output script
- Fixed duplicate ids in drag-drop progress template
- Fixed some wrong labels in a couple of samples
Version 3.5.5 - 12 Aug 2007
Changes:
- Added support for SlickUpload controls when multiple forms are on the page
- Added server side file filtering
Version 3.5.4 - 02 Jul 2007
Changes:
- Added support for the SlickUpload controls inside a frameset
- Fixed issue when a ProgressDisplay is on a page with no UploadManager
Version 3.5.3 - 01 Jul 2007
Changes:
- Fixed UploadedFile.Save bug
Version 3.5.2 - 24 Jun 2007
Changes:
- Fixed Firefox css parsing bug
Version 3.5.1 - 12 Jun 2007
Changes:
- Optimized SqlClient status manager
- Fixed duplicate client ids on UploadManager
- Forced percentage display to two decimal places
Version 3.5 - 08 Jun 2007
Changes:
- Added full designer support
- Added Krystalware.SlickUpload.IsUploadInProcess flag for client code to check
- Added ProgressElement and ProgressBarElement controls
- Added support for multiple progress displays
- Added support for UploadManager control with a null ProgressAreaTemplate
- Added support for UploadManager control within DetailView
- Added PercentCompleteText status field
- Added UploadManager documentation, with supporting articles
Version 3.2.3 - 01 May 2007
Changes:
- Added status fields
- suRemainingLengthText
- suTransferredLengthText
- suTimeElapsedText
Version 3.2.2 - 25 Apr 2007
Changes:
- Fixed progress bar localization issues
- Added UploadManager.UploadHandlerLocation property to specify a custom upload handler page location
Version 3.2.1 - 16 Apr 2007
Changes:
- Added the UploadManagerRequiredFileValidator
- Fixed the duplicate event wireup in the UploadManagerVB sample
- Added support for searching in ~/bin for the SlickUpload license
Version 3.2 - 07 Apr 2007
Changes:
- Fixed validation
- Fixed request filtering
- Misc browser fixes
- Hooked all buttons so events fire for additional buttons on page
- Added ProgressDisplay control
- Tested on IE 6/7, Firefox, Opera, and Safari
Version 3.1 - 18 Mar 2007
This is a SlickUpload 3 revision release, including .NET 1.1 support as well as some minor bug fixes and enhancements. Changes:
- Full samples for .NET 2.0 and 1.1, in C# and VB.NET
- Fixed file input adding issue on latest versions of Firefox
- Fixed file input adding issue on Opera
- Automatically creates destination folder, if possible
- Added filename parser handling of semicolons
- Added .NET 1.1 build
- Removed scrolling on UploadManager iframe
- Added autosizing on UploadManager iframe
- Tested on IE 5/6, FireFox, Opera, and Safari
Version 3.0 - 12 Feb 2007
Changes:
- UploadManager control
- Web Farm/Web Garden support
- Location based config
- UploadStreamProvider architecture
Version 2.0 - 14 Aug 2005
Changes:
- UploadLocationProvider architecture
- New and updated samples
- VB samples
- Cassini support
- VS 2005 WebHost support
- ASP.NET 2.0 support
Version 1.0 - 11 Oct 2004
Initial release.