SlickUpload Documentation
- Installation
- Configuration
- Quick Start Guide
- How To
- Concepts
- Troubleshooting
- FAQ/Known Issues
- Upgrading
- Client Reference
-
Server Reference
- Class reference syntax
- Installing the license
-
SlickUpload Namespaces
- Krystalware.SlickUpload
- Krystalware.SlickUpload.Configuration
- Krystalware.SlickUpload.Storage
- Krystalware.SlickUpload.Storage.Streams
- Krystalware.SlickUpload.Web
- Krystalware.SlickUpload.Web.Controls
- Krystalware.SlickUpload.Web.Controls.Design
- Krystalware.SlickUpload.Web.Handlers
- Krystalware.SlickUpload.Web.Mvc
- Krystalware.SlickUpload.Web.SessionStorage
Installation
Looking for information about installing a SlickUpload license to remove branding? See the Installing the license topic.
Once SlickUpload is installed, check out the SlickUpload Quick Start guide for an overview of adding the SlickUpload control to your application.
There are three simple steps to install SlickUpload in your application.
-
Install the assembly
Add the Krystalware.SlickUpload.dll assembly as a project reference or copy it to your application bin folder. This assembly contains the SlickUpload HttpModule as well as the SlickUpload controls.
Make sure to use the assembly for the version of .NET you are using. The assembly in the Bin-NET2 folder is for .NET 2.0. The assembly in the Bin-NET35 folder is for .NET 3.5 and 4.0.
-
Add the SlickUpload
Web.configsectionsThere are several Web.config sections that are required for SlickUpload to function properly. The default configuration is listed below. For more information on the possible configuration options, see the Configuration topic.
configSectionsTo register the SlickUpload configuration sections, you must add several elements to the configSections element. This element should be the first child of the configuration element. If you already have other configuration sections registered, just append these elements to the list.
The following example shows the configSections element with the SlickUpload configuration sections added. Add this section to the Web.config as a child of the
<configuration>element.<section name="slickUpload" type="Krystalware.SlickUpload.Configuration.SlickUploadSection, Krystalware.SlickUpload" requirePermission="false" />slickUploadThis section contains the configuration for SlickUpload. The following example shows a default configuration that saves files to a folder named
"Files"under the current application root. For more information about the SlickUpload configuration settings, see the Configuration topic.Add this section to the Web.config as a child of the
<configuration>element.<slickUpload> <uploadProfiles> <add name="default"> <uploadStreamProvider type="File" location="~/Files" /> </add> </uploadProfiles> </slickUpload>system.web/httpModules&system.webServer/modulesTo allow SlickUpload to handle upload requests, you need to add its HttpModule to your application. If you already have other HttpModules in your application, just append the add element to the list.
If you are running IIS 7 integrated mode, you will need to add the
<system.webServer/modules>section. If you are running on IIS 7 classic mode, older versions of IIS, or the built-in VS.NET WebDev server, you will need to add the<system.web/httpModules>. If you want to support both IIS 7 integrated and other servers, add both sections. If you do this, make sure to also add theconfiguration to disable IIS 7's default validation of the httpModulesSectionThe following example shows a typical
<system.web/httpModules>element with the SlickUpload HttpModule reference. Add this section to the Web.config as a child of the<system.web>element.<httpModules> <add name="SlickUploadModule" type="Krystalware.SlickUpload.Web.SlickUploadModule, Krystalware.SlickUpload"/> </httpModules>The following example shows a
<system.webServer>element with the SlickUpload HttpModule reference. Add this section to the Web.config as a child of the<configuration>element, or merge these settings into your existing<system.webServer/modules>element if you have one.<system.webServer> <validation validateIntegratedModeConfiguration="false"/> <modules runAllManagedModulesForAllRequests="true"> <add name="SlickUploadModule" type="Krystalware.SlickUpload.Web.SlickUploadModule, Krystalware.SlickUpload" preCondition="integratedMode" /> </modules> </system.webServer>system.webServer/security/requestFilteringIf you are running in IIS7 integrated mode, the default maximum request size is 30,000,000 bytes, controlled by the
maxAllowedContentLengthsetting. To change this, add the following section at the end of your Web.config:<location path="SlickUpload.axd"> <system.webServer> <security> <requestFiltering> <requestLimits maxAllowedContentLength="2072576000"/> </requestFiltering> </security> </system.webServer> </location>This example shows
maxAllowedContentLengthbeing set within a<location>tag that limits the configuration to SlickUpload only. If you want to apply this setting to your entire application (and not just SlickUpload), or to other SlickUpload handlers than SlickUpload.axd, remove the<location>tag and move the<security>tag to the root<system.webServer>section in your Web.config.NOTE: If you get an error such as "The requested page cannot be accessed because the related configuration data for the page is invalid" when you add the requestFiltering section to your Web.config, you'll have to modify the IIS 7 applicationHost.config file to enable you to configure request filtering at the application level instead of the machine level. To do this, open the
%windir%\System32\inetsrv\config\applicationHost.configfile in a text editor and change the following line:<section name="requestFiltering" overrideModeDefault="Deny" />
to read:<section name="requestFiltering" overrideModeDefault="Allow" />
If you are in a hosted environment such that you can't manually change the applicationHost.config, request that your hosting provider makes the above change.
-
Add the SlickUpload controls to the VS.NET toolbox
This step isn't necessary for SlickUpload to function, but will add drag-drop support for adding controls to your page in WebForms projects. To add the SlickUpload controls to your toolbox:
- Open VS.NET and your solution
- Click the Tools->Choose Toolbox Items menu item
- Browse to and select the SlickUpload assembly (Krystalware.SlickUpload.dll)