Выяснил это! Я развертываю элемент управления в веб-приложении sharepoint. (Ниже рассматривается SPVD как «Виртуальный каталог приложения Sharepoint».) Если вы не используете сайт Sharepoint, вы будете использовать корень виртуального каталога вашего веб-приложения, где вместо этого я использовал Sharepoint. Ниже приведены шаги, которые я выполнил, чтобы запустить демонстрационную страницу на моем сервере.
Во-первых, конфигурация отличается, если вы используете «веб-приложение» вместо «веб-сайта». Я не буду вникать в разницу здесь. Но в моем примере я настраиваю простой «веб-сайт». мне пришлось:
- Copy
Brettle.Web.NeatUpload.dll
в GAC на сервере (это, кажется, что на Windows Server 2008, вы не должны использовать gacutil - просто скопировать DLL в папке% WINDIR% \ сборки Обратите внимание, что вы должны сделать это на сервере, это не работает, если вы попытаетесь сделать это через сетевой ресурс). Если вы этого не сделаете, демон NeatUpload просто ничего не сделает. После этого вам придется перезапустить веб-сайт в IIS.
- Некоторые из руководств говорят, что вам нужно обновить web.config, чтобы отобразить соответствующую версию и руководство, но я обнаружил, что мне не нужно это делать (вы увидите мой web.config ниже) - UNLESS - вы хотите использовать конфигурацию раздела neatupload в web.config. Значит, лучше просто сделать это правильно.
Проводники также говорят, чтобы использовать Guid и номер версии в ASPX страниц, как demo.aspx
, так, замените этот:
<%@ Register TagPrefix="Upload" Namespace="Brettle.Web.NeatUpload" Assembly="Brettle.Web.NeatUpload" %>
с этим:
<%@ Register TagPrefix="Upload" Namespace="Brettle.Web.NeatUpload" Assembly="Brettle.Web.NeatUpload, Version=1.3.3798.663,Culture=neutral, PublicKeyToken=c95290d92c5893c8" %>
Скопируйте весь каталог по адресу NeatUpload-1.3.25\dotnet\app\bin
в SVPD\bin
. Он содержит следующие пункты:
- Brettle.Web.NeatUpload.dll (такие же, как тот, который вы установили в GAC)
- Brettle.Web.NeatUpload.GreyBoxProgressBar.dll
- Brettle.Web. NeatUpload.HashedInputFile.dll
- Hitone.Web.SqlServerUploader.dll
- каталог под названием
en-US
(с DLL в нем)
- другой direcotry называется
fr
(с DLL в нем)
- несколько баз данных .mdb и Brettle.Web.NeatUpload.xml
- Добавьте ссылки на http-модули в файл web.config веб-приложения (см. Пример web.config ниже).
Теперь вам нужно скопировать каталог: NeatUpload-1.3.25\dotnet\app\NeatUpload
в SPVD, и оставить его имени NeatUpload
, так что у вас есть SVPD\NeatUpload
со всем его исходным содержанием. Теперь в этой папке есть два файла, которые вам нужно изменить: Progress.aspx
и SmoothProgress.aspx
. В руководствах, мне сказали, чтобы использовать GUIDs и номера версий в @ деклараций, таких, как это:
<%@ Page language="c#" AutoEventWireup="false" Inherits="Brettle.Web.NeatUpload.ProgressPage,Brettle.Web.NeatUpload,Version=1.3.3519.18793,Culture=neutral,PublicKeyToken=C95290D92C5893C8" %>
<%@ Register TagPrefix="Upload" Namespace="Brettle.Web.NeatUpload" Assembly="Brettle.Web.NeatUpload, Version=1.3.3798.663,Culture=neutral, PublicKeyToken=c95290d92c5893c8" %>
Вот web.config, я положил в папку с демонстрационной страницей.
<?xml version="1.0"?>
<configuration>
<configSections>
<!--You need this part so that you can have a neatupload configuration section. You will get .net errors if you try to add the configuration section without this part here.-->
<section name="neatUpload"
type="Brettle.Web.NeatUpload.ConfigSectionHandler, Brettle.Web.NeatUpload"
allowLocation="true"
/>
</configSections>
<!--This is where you put your neatupload configuration preferences.-->
<neatUpload xmlns="http://www.brettle.com/neatupload/config/2008"
useHttpModule="true"
/>
<system.web>
<customErrors mode="Off"/>
<!-- Always required to use any of NeatUpload's features. Without it, ProgressBars won't display and MultiFile will look like a regular HtmlInputFile. -->
<httpModules>
<add name="UploadHttpModule" type="Brettle.Web.NeatUpload.UploadHttpModule,Brettle.Web.NeatUpload,Version=1.3.3798.663,Culture=neutral,PublicKeyToken=c95290d92c5893c8" />
</httpModules>
<!-- Set these next 2 attributes large enough to accomodate the largest and longest running upload you want to support. Note that browsers and IIS typically don't support uploads larger than 2GB (2097151 KB). -->
<httpRuntime maxRequestLength="2097151" executionTimeout="999999"/>
<!-- Not required for NeatUpload but makes it easier to debug in VS. -->
<compilation debug="true"/>
</system.web>
<!-- For IIS7's Integrated Pipeline Mode which is used by the DefaultAppPool. -->
<system.webServer>
<security>
<requestFiltering>
<!-- Increased maxAllowedContentLength from default of 300MB. -->
<requestLimits maxAllowedContentLength="2147483648" />
</requestFiltering>
</security>
<modules>
<add name="UploadHttpModule" type="Brettle.Web.NeatUpload.UploadHttpModule,Brettle.Web.NeatUpload,Version=1.3.3798.663,Culture=neutral,PublicKeyToken=c95290d92c5893c8" preCondition="managedHandler"/>
</modules>
<validation validateIntegratedModeConfiguration="false"/>
</system.webServer>
</configuration>
Заметки о пакетах установки Пакета установки я был на http://neatupload.codeplex.com/releases/view/46086 - там, кажется, несколько других, таких как «двоичные файлы пакет» в http://neatupload.codeplex.com/releases/view/59339, но структура каталогов отличаются, и инструкции не будут иметь большого смысла. На главной странице проекта в CodePlex также есть пакет: http://neatupload.codeplex.com/, но если вы используете этот пакет, у вас будет другой номер версии и руководство для dll при его развертывании в GAC.
Руководство по эксплуатации В качестве инструкции по эксплуатации, проверьте: http://mumblestiltskin.blogspot.com/2009/10/using-neatupload-simple-setup.html?showComment=1335835416022#c1846924755786832325, и есть также HTML руководство в пакете двоичных файлов выше. В других пакетах вам необходимо «создать» руководство с помощью Open Office. Тогда, конечно, вы можете ссылаться на этот пост!
Устранение неисправностей Возникли проблемы?
Единственное, что осталось сейчас, чтобы добавить какой-то обработчик для копирования файлов, где вы хотите их. NeatUpload добавляет их только к временному файлу, и мне еще предстоит выяснить, где это ...