IT Hit WebDAV Server Engine for .NET Release History
v6.0.4012November 17, 2017
- Tested with .NET Framework 4.7.1.
- PUT now returns ETag in response readers. Microsoft Office applications submit outdated ETag after machine wakes up from sleep mode, causing file update failure. Now PUT returns an updated ETag in the response, so the client-side ETag is always properly updated.
- .NET Core projects now use .NET Core 2.0 and reference .NET Core 2.0 packages from NuGet.
- Add WebDAV Server Implementation wizard did not download WebDAV Ajax Library (webdav.client) from NPM. Now this bug is fixed.
- All WebDAV wizards for Visual Studio now download WebDAV Ajax Library (webdav.client) from NPM during wizard completion. Before it was downloaded during build only.
- Mime-types list updated. Now it contains all most recent list of all registered mime-types.
- VS 2015 + .NET Framework 4.7 + Add WebDAV Server Implementation wizard throw exception: "Multiple assemblies with equivalent identity have been imported: System.Reflection.dll". Now this bug is fixed.
v6.0.3896 BetaOctober 20, 2017
- Ms-Author-Via header was missing in OPTIONS request. The documents opened as read-only in case the server was accessed from localhost. Now Ms-Author-Via header is returned.
- The Microsoft.WebSockets package was referenced if 'Add WebDAV Server Implementation' wizard was used in Visual Studio. Now Microsoft.WebSockets is not
- 'The license is obsolete...' massage with invalid date was displayed in case a license is used with versions released after support expiration date. Now the correct date is displayed
v6.0.3893 BetaOctober 19, 2017
- 'This file is locked for editing by User Name' is now displayed in MS Office UI together with 'Notify When Available' button if the file is locked by other user.
v6.0.3890 BetaOctober 18, 2017
- Microsoft Office merging is now supported. If a document is opened by 2 users simultaneously Microsoft Office will offer merging when saving a second user copy.
- WebDAV Ajax Library files are now referenced from local server from '/wwwroot/node_modules/webdav.client/' folder (previously were referenced from ajaxbrowser.com). WebDAV Ajax Library files used in samples and code generated by WebDAV wizards for Visual Studio are now automatically downloaded from NPM using a pre-build step.
- Microsoft.WebSockets package replaced with System.Net.WebSocketsin in all samples and code generated by Visual Studio. Web Sockets sample code refactored.
- ‘Add WebDAV Server Implementation’ wizard failed in Visual Studio 2015 with “System.InvalidOperationException: Failed to add reference. The package 'ITHit.WebDAV.Server' tried to add a framework reference to 'System.Reflection' which was not found in the GAC.“ message. Now this bug is fixed.
- Mobile HttpListener sample now sends notifications to web browser using Server Sent Events (SSE).
- Mobile HttpListener sample refactored. Interfaces missing in Xamarin are provided: IWebHost and IWebHostBuilder.
- License check performance optimized.
- Generic error is displayed in Set License application if any errors when setting license occurred. Now a proper error message is displayed.
- Port 3335 is was hardcodedwhen using ASP.NET Core WebDAV Server Application Wizard. Now port is randomly selected.
v5.8.3741August 29, 2017
- Yearly and monthly subscriptions are now supported.
v5.7.3670August 21, 2017
- iOS/Android HttpListener sample references are updated to support Core 2.0 release version.
- ASP.NET Core WebDAV samples and code generated by wizard failed to compile with Visual Studio 2017 Preview if .NET Core 2.0 release SDK is installed. Now references are updated to support .NET Core 2.0 final release.
- "Open With..." command added in samples on a default custom handler page.
- IT Hit WebDAV Ajax Library version is displayed now on a default custom handler page.
v5.7.3628August 10, 2017
- OutOfMemory exception is thrown in some configurations. Now this bug is fixed.
- Logging refactored in iOS & Android HttpListener sample. If any error during request processing occurs it is loged on a screen.
v5.7.3625August 9, 2017
- HttpListener iOS & Android sample can now run in the background.
- Digest authentication is added to HttpListener iOS & Android sample (disabled by default).
- HttpListener iOS & Android sample default screen now shows IP address of the mobile WebDAV server to connect to.
- Unused references are removed from HttpListener iOS & Android sample.
- Log file is now created in App_Data\WebDAV\Logs folder in HttpListener iOS & Android sample.
- DefaultLoggerImpl.LogError() and DefaultLoggerImpl.LogDebug() are marked as virtual.
v5.7.3609August 3, 2017
- Incorrect references fixed in iOS/Android server sample.
v5.7.3602August 2, 2017
- iOS and Android HttpListener WebDAV server sample on .NET Standard 2.0 Preview is provided.
- ITHit.WebDAV.Server.HttpListener package now supports .NET Standard 2.0 Preview.
- Default Engine logging logic changed. If logger path was not specified, the WebDAVLog.txt was created in calling assembly folder (typically \bin\), which caused ASP.NET web server to restart when log file is updated. Now the Engine does not create any log file if log path is not specified.
- Web Sockets did not work if WebDAV code is added using 'Add WebDAV Server Implementation' wizard. Now this bug is fixed.
v5.6.3515July 5, 2017
- ITHit.Collab.dll now supprts .NET Framework 4.5.
- Error the "The type or namespace name 'Collab' does not exist in the namespace 'ITHit'" occurred in CalDAV /CardDAV samples and in code generated by wizard if .NET 4.5.2 or earlier is selected. Now this bug is fixed.
- Icon column is shown on small screens in MyCustomHandlerPage.aspx/html. The content stretches beyond the screen if the file name is too long. Now the file name is it is truncated with CSS ellipsis.
- The "The name 'HttpContext' does not exist in the current context in UsersFolder.cs" error in case of CalDAV with file system back end. The System.Web namespace is added UsersFolder.cs.
- C# and VB examples in class reference documentation for CalDAV/CardDAV refactored and fixed.
v5.6.3502June 20, 2017
- .NET Framework 4.5.1 is now supported by the following packages: ITHit.WebDAV.Server, ITHit.WebDAV.Server.Core, ITHit.WebDAV.Server.Web, ITHit.WebDAV.Server.HttpListener, ITHit.WebDAV.Server.Owin.
- MS Office 2016 on Mac OS X does not work with Basic & Digest authentication. "Word cannot open the document: user does not have access privileges" error is displayed. Now OPTIONS request requires authentication only if User-Agent header starts with "Microsoft Office".
- Sample code in documentation refactored.
v5.5.3491June 13, 2017
- Visual Basic examples in class reference documentation are provided.
- CalDAV/CardDAV comments added in Visual Basic samples.
- Digest authentication does not work in Visual Basic samples. This bug is now fixed.
- VB HttpListener samples and code generated by wizard contained references to .cs files in project file in Windows service description. Now this bug is fixed.
- Files and folders with '+' character did not work in ASP.NET Core with File System back-end sample. '+' char tests fail. Now web.config is added to this sample to allow '+' character.
- Blank page is displayed when running project generated with Visual Basic HttpListener CalDAV/CardDAV Server wizard. Now this bug is fixed.
v5.5.3486June 6, 2017
- Visual Basic WebDAV, CalDAV and CardDAV samples provided.
- Visual Basic WebDAV, CalDAV and CardDAV wizards for Visual Studio 2017 and 2015 provided.
- Samples and code generated by WebDAV wizards for Visual Studio now provide notifications via WebSockets. The sample web UI is now refreshed in case of any changes on the server. Lock icon is displayed over locked MS Office documents.
- Full-featured WebDAV ASP.NET Core Application wizard is provided, all options are available now.
- MaxBackups and FileSize properties added to DefaultLoggerImpl class.
- Samples renamed and refactored.
- ITHit.WebDAV.Server.Core, ITHit.WebDAV.Server.WebListener, ITHit.WebDAV.Server.Web, ITHit.WebDAV.Server.Owin, ITHit.WebDAV.Server.HttpListener packages were missing from source codes packages and from documentation. Now this bug is fixed.
- Exception in samples if UseBasicAuth() or UseDigestAuth() is called in ASP.NET Core samples. Now this bug is fixed.
- If Visual Studio 2017 was installed without Visual Studio 2015 WebDAV wizards failed to start. Now this bug is fixed.
- ntdll.dll not found exception if running ITHit.WebDAV.Server package on Mono on Mac OS X. Now this bug is fixed.
- StackOverflowException is thrown if if request or response stream was disposed in user interfaces implementation. CalDAV & CardDAV samples with SQL back-end throw StackOverflowException. Now this bug is fixed.
- ArgumentException: "The drive name does not exist." in IFolderAsync.GetAvailableBytesAsync() and IFolderAsync.GetUsedBytesAsync() implementation in ASP.NET & HttpListener samples with file system back-end on Mono on Mac OS X. Now this bug is fixed.
- OverflowException: Arithmetic operation resulted in an overflow.In OSXExtendedAttribute.cs in method GetExtendedAttributeAsync() in ASP.NET & HttpListener samples with file system back-end on Mono on Mac OS X. Now this bug is fixed.
v5.1.3321May 8, 2017
- /Properties/ folder in WebDAVServer.FileSystemStorage and WebDAVServer.SqlStorage samples in NuGet contain extra files. This bug is now fixed.
- Broken reference to ITHit.WebDAV.Server.Core package in WebDAVServer.FileSystemStorage and WebDAVServer.SqlStorage samples in NuGet. Now this bug is fixed.
- Exception when running a projects generated with ASP.NET CalDAV / CardDAV Application wizard with SQL back-end: 'User' does not contain a constructor that takes 7 arguments. Now this bug is fixed.
- Exception when running a projects generated with ASP.NET CalDAV / CardDAV Application wizard with SQL back-end: "Invalid object name 'card_Access'. This bug is now fixed.
- Exception in WebDAVServer.SqlStorage sample. [Item].[FileAttributes] field is missing. Now this bug is fixed.
- Database remain locked after Visual Studio WebDAV/CalDAV/CardDAV wizard with SQL back-end exits. Now this bug is fixed.
- ITHit.WebDAV.Server and ITHit.WebDAV.Server.Web packages in projects generated with ASP.NET CalDAV / CardDAV Application wizard are now referenced from NuGet.
- FormsMembershipProvider.PasswordFormat property sample implementation throw exception in some machines configuration. Now PasswordFormat returns MembershipPasswordFormat.Clear value.
v5.1.3304May 1, 2017
- WebDAV wizards now support Visual Studio 2017.
- The ITHit.WebDAV.Server package now supports .NET Standard 1.6. References to System.Web, Owin, HttpListener and other packages that are not supported by .NET Standard 1.6 are moved to ITHit.WebDAV.Server.Web, ITHit.WebDAV.Server.Owin, ITHit.WebDAV.Server.HttpListener packages.
- .NET Core WebDAV Context is provided in ITHit.WebDAV.Server.Core package.
- WebListener WebDAV Context is provided in ITHit.WebDAV.Server.WebListener package.
- ASP.NET Core WebDAV Server Application wizard added to Visual Studio 2017.
- Cross-platform ASP.NET Core sample with file system back-end is provided. Locks and custom properties are stored in Extended Attributes in case of OS X and Linus and in NTFS Alternate Data Streams in case of Windows.
- Cross-platform ASP.NET Core sample with Microsoft SQL back-end is provided.
- All packages are now published to NuGet. WebDAV Visual Studio wizards and samples provided with SDK now reference all packages from NuGet.
v4.5.3120February 24, 2017
- Incorrect namespace was generated in addressbook-query report. Now this bug is fixed.
- rawQuery parameter in ICalendarReportAsync.QueryAsync(), ICalendarReport.Query(), IAddressbookReportAsync.QueryAsync() and IAddressbookReport.Query() did not return XML text. Now this bug is fixed.
- ICalendarReportAsync.QueryAsync() and ICalendarReport.Query() methods were missing class reference documentation. Now this bug is fixed.
v4.5.3042December 1, 2016
- "NullReferenceException" in code generated by wizard if server is based on HttpListener during application start. The blank page is displayed. Now this bug is fixed.
v4.5.3024November 23, 2016
- iOS / OS X profile generation added to CalDAV / CardDAV samples and code generated by Visual Studio wizards. Apple client can now add profile automatically using Connect button.
- Sample CardDAV server with SQL back-end (and code generated by wizard) now converts non-standard vCard properties submitted by iOS / OS X client (item1.EMAIL, item1.X-ABLabel, etc.) to a standard format before saving into database. If the request is made by Apple client the standard vCard properties are converted to the format understood by iOS / OS X befor sending output.
- Sample CardDAV server with SQL back-end (and code generated by wizard) now outputs/updates/deletes custom vCard properties (X-PROP) only if the request is made by the same CardDAV client type that created this property. This prevents custom props being overwritten by clients that can not interpret them.
- Calendars folders and address books folders in samples with SQL back-end (and code generated by wizard) now implement ACL. Required by OS X.
- Sample CardDAV server with file system back-end (and code generated by wizard) now automatically converts vCard content into the format understood by the client making a request. If the vCard content is created by non-Apple client and the request is made by Apple client, TEL, ADR, EMAIL, URL, IMPP properties are converted to the format understood by iOS / OS X contacts application (item1.EMAIL, item1.X-ABLabel, etc.) and vise versa.
- CardDAV and CalDAV SQL implementation refactored. All tables now has 'cal_' and 'card_' prefix.
- Permissions checks added to CalDAV/CardDAV implementation with SQL back-end, stored in Access table.
- vCard parsing and generation fixed and refactored.
- IAppleCalendarAsync.Invite property is replaced with GetInviteAsync() method. IAppleCalendarAsync.SharedBy property is replaced with GetSharedByAsync() method.
v4.5.2958 Beta 2November 7, 2016
- SQL CardDAV implementation added. CalDAV/CardDAV Visual Studio wizard can now generate both CalDAV and CardDAV implementation with MS SQL database back-end.
- The CalDAV/CardDAV custom handler page (CalDAVHandlerPage.html/aspx) refactored. Now this page uses Twitter Bootstrap. The page is properly resized and displayed on all screen sizes.
- Search implementation in WebDAV samples with file system back-end now returns snippet (piece of text around search phrase in file content). Ajax is refactored on MyCustomHandlerPage.html/aspx page to request snippet from server using custom WebDAV property and display snippet in search results.
- The WebDAV custom handler page (MyCustomHandlerPage.html/aspx) refactored.
v4.5.2909 Beta 2September 19, 2016
- The custom handler page (MyCustomHandlerPage.html/aspx) updated. Now this page uses Twitter Bootstrap. Navigation in hierarchy is now performed without page reloading. Breadcrumb added. The page is properly resized and displayed on all screen sizes.
- Search support with drop-down hint is added to the custom handler page (MyCustomHandlerPage.html/aspx) in all samples using WebDAV Ajax Library Folder.SearchAsync() function. Search support is detected using Folder.GetSupportedFeaturesAsync() ajax call.
- CalDAV samples and code generated by WebDAV wizards now support Outlook CalDAV Synchronizer client. The IAclHierarchyItemAsync is implemented on calendar folder items (CalendarFolder class in samples) to support CalDAV Synchronizer.
- SearchOptions class refactored - constructor and setters are private now.
- <user>\Documents\IT Hit\WebDAV Server Engine\<version>\Samples\ folder do not delete during uninstall. This bug is fixed now.
- Closing WebDAV Wizard in Visual Studio using [x] do not return to templates list. This bug is fixed now.
v4.5.2806 Beta 2May 6, 2016
- Visual Studio 2015 Update 2 is now supported. “ArgumentException: Empty path name is not legal.” exception was thrown by WebDAV wizards in VS 2015 and VS 2013 if Visual Studio 2015 Update 2 was installed. This bug is now fixed.
- Visual Studio WebDAV Wizards templates installation and registration refactored. Wizard’s code for VS 2015 and VS 2013 made independent of each other.
- 'HTTP Error 404.3 - Not Found' was returned by IIS if .pkg, .deb, .msi and .gz, file types are not registered in IIS or IIS Express (required for IT Hit WebDAV Ajax Client and Ajax File Browse custom protocols installers download if you host them on your WebDAV website). <StaticContent> section is added to web.config generated by WebDAV wizards with .pkg and .deb enabled by default.
v4.5.2672 Beta 2February 12, 2016
- Custom properties in CalDAV samples and code generated by CalDAV wizard with MS SQL back-end are now supported. Any iCalendar custom properties and custom parameters are saved to CustomProperties table.
- Response XML did not log. This bug is now fixed.
- WebDAV Ajax Library code on MyCustomHandler.aspx/htm is updated to support IT Hit WebDAV Ajax Library v2.
- The code generated by CalDAV Visual Studio wizard was throwing “Operator '==' cannot be applied to operands of type 'object' and 'System.DateTimeKind'” exception in case of CalDAV+SQL+.NET 3.5 combination. This bug is now fixed.
- UID fields are now indexed in CalDAV SQL database.
v4.5.2657 Beta 2January 25, 2016
- All synchronous calls are replaced with asynchronous method calls using Task-Asynchronous Pattern. XML generation is now fully asynchronous.
- Time zones (VTIMEZONE) are now generated by IT Hit.Collab library. Both System (Windows) and IANA (Olson) time zones are supported. IANA time zones database is provided by IT Hit.Collab library.
- ITHit.Collab library refactored, iCalendar and vCard generation improved and covered with more tests.
- CalDAV samples with SQL back-end and code generated by VS wizards are tested with iOS Calendar, OS X Calendar, Mozilla Lightning, eM Client, Evolution, BusyCal, SOHO Organizer, Bynari WebDAV Collaborator for Outlook, Fantastical, DAVDroid, CalDAV-Sync.
- CalDAV/CarDAV wizards now support .NET Framework 3.5 and 4.0.
- CalDAV/CarDAV wizards now support Visual Studio 2010 - 2013.
- ICurrentUserPrincipalAsync interface is provided. ACL implementation code in CalDAV/CardDAV samples simplified.
- IAccessControl marked interface provided – adds access-control token to DAV header.
- ICalendarReport and IAddressbookReport interfaces provided. calendar-query processing is refactored. addressbook-query processing implemented.
- calendar-multiget and addressbook-multiget processing refactored.
- BeforeResponse and EnsureBeforeResponseWasCalled are now asynchronous and renamed to BeforeResponseAsync and EnsureBeforeResponseWasCalledAsync.
- Separate CalDAV / CardDAV sources version build is provided for CalDAV / CardDAV source license owners.
- Potential XML External Entity (XXE) Processing vulnerability fixed.
- All samples converted to VS 2015 format.
- Mozilla Thunderbird was detected as a web browser in case of Forms+Basic/Digest options was used in VS CalDAV/CardDAV wizards. Now this bug is fixed.
- Byte order mark (BOM) was added to XML output stream in <calendar-data> tag. This bug is now fixed.
- Tested with Visual Studio 2015 Update 1.
v4.5.2599 Beta 1November 4, 2015
- CalDAV Server Sample with SQL back-end Beta implementation is provided.
- iCalendar and vCard parsing library (ITHit.Collab) Beta implementation is provided for .NET 3.5 – 4.6.
- 'Add CalDAV/CardDAV Server Implementation' wizard is provided. MS SQL and file system (NTFS) options are supported.
- CaldDAV/CardDAV server sample with file system back-end and code generated by wizard are refactored.
- New class reference documentation with synchronous and asynchronous interfaces is provided.
- The output stream did not close properly if output buffering was enabled. HttpListener WebDAV Server and CalDAV/CardDAV server implementation samples show an empty start page when run on .NET 4.5 or later. Now this bud is fixed.
- FileNotFoundException for Microsoft.VisualStudio.TextTemplating file exception is thrown in WebDAV wizards in Visual Studio 2015 if no Visual Studio 2013 or earlier is installed in the same machine. This bug is now fixed.
- CalDAV MIP e-mail notification is moved to iMipEventSchedulingTransport class provided with samples and now supports Unicode.
- Config section classes are replaces with System.Configuration.NameValueFileSectionHandler to specify davLocation. Routing module sample implementation refactored.
v4.0.2416 ReleaseAugust 11, 2015
- Microsoft Visual Studio 2015 is now supported.
- Samples and code generated by WebDAV wizards are now asynchronous if .NET 4.5 or later is selected.
- Tested with Update 5 for Visual Studio 2013.
- Authentication code generated by 'Add WebDAV Server Implementation wizard' (Forms/Basic/Digest/MS-OFBA) in Beta release fixed.
- To provide better performance (especially in case of samples with SQL back-end), back-end code is removed from MyCustomHandlerPage.cs and replaced with WebDAV Ajax Library calls in MyCustomHandlerPage.aspx.
- Asynchronous page creation in MyCustomGetHandler.cs is fixed in case .Net 4.5 or later is selected.
- GET and HEAD request to folder items in samples and code generated by Visual Studio WebDAV wizards could hang in case of asynchronous interfaces implementation in previous beta release. Now this bug is fixed.
- IMethodHandler, IPropertyHandler, IReportHandler interfaces were missing Async suffix in their names in Beta release in asynchronous version. Now this bug is fixed.
v4.0.2382 Beta 1June 3, 2015
- Asynchronous Engine implementation is provided. All methods in Engine interfaces now follow Task-based Asynchronous Pattern. The synchronous version, compiled for .NET 4.0 and 3.5 is also provided. Source codes version now contains both synchronous and asynchronous server Engine implementation.
- WebDAV Wizards for Visual Studio can now generate asynchronous implementation if .NET 4.5 or later is selected or synchronous implementation if .NET 4.0 or .NET 3.5 is selected. The interfaces implementation is still synchronous in this Beta release.
- Samples provided with the engine now use new asynchronous interfaces and Engine implementation.
- The DavContextBase class now provides new constructor that accepts IOwinContext interface.
- CalDAV and CardDAV implementation can now process calendar-multiget and addressbook-multiget requests more efficiently. IAddressbookFolder and ICalendarFolder and their async counterparts now provide MultiGet methods that return a list of IHierarchyItems based on the list of item urls requested by the CalDAV or CardDAV client.
- The content of PUT and GET requests can now be enabled by setting ILogger.LogFlags property.
- ICalendarDiscoveryAsync.CalendarHomeSet and IAddressbookDiscovery.AddressbookHomeSet properties are replaced with GetCalendarHomeSet and AddressbookHomeSet methods and their asynchronous counterparts.
- IVersion.VersionableItem property is replaced with GetVersionableItem method and its asynchronous counterpart.
- ASP.NET WebDAV Server Implementation wizard was setting .NET 4.5 as a project version in case .NET 4.5.1 or later was selected. This bug is fixed now, the correct .NET version is set in a project file.
v3.9.2111April 17, 2015
- The 'Set License' application started throwing exception during trial license request after recent www.webdavsystem.com website update. This bug is now fixed, the new account activation email is sent and the email with a trial license file is sent.
- DLLs and MSI signatures are updated.
v3.9.2098December 7, 2014
- Rollback in Add WebDAV Server Implementation wizard is implemented. If any exception during adding WebDAV implementation occurred the changes are rolled back.
- Exception in case 'File Storage Location' is set to a folder outside of the project folder in “Add WebDAV Server Implementation” wizard. Now this bug is fixed.
- In case URL parameters were specified in requests to files in /AjaxFileBrowser/ folder in case of HttpListener-based server the exception was thrown. For example when selecting “Rerun” in Ajax tests. Now this bug is fixed.
v3.9.2075October 21, 2014
- MS-OFBA support is provided. In Add WebDAV Server Implementation wizard you can now enable Microsoft Office Forms-Based Authentication on your WebDAV folder. You can also enable it together with Basic or Digest authentication.
- OWIN authentication middleware is now supported. In Web Forms and MVC 5 projects, generated by Visual Studio 2013 you can now add Basic, Digest and MS-OFBA authentication.
- Authentication dialog is redesigned in Add WebDAV Server Implementation wizard to enable Forms+Basic+OFBA and Forms+Digest+OFBA authentication as well as pure Forms authentication on your WebDAV folder.
- Deployment to Azure simplified. 'Build Action' on Web.config was ‘None’ as well as files in App_Data did not include in project. As a result the project did not deploy run on Azure automatically. Now Web.config is marked as ‘Content’, files in App_Data included in the project and deployed to Azure automatically.
- Incorrect cast in sample search method implementation, projects generated by WebDAV wizards do not compile if .Net Framework 3.5 was used. Now this bug is fixed.
v3.8.1894June 25, 2014
- Search in SQL Server sample implementation and code cenerated by wizards is fixed.
- Mime types for Microsoft Project and Microsoft Visio are updated.
- Microsoft Project and Microsoft Visio files are added to sample storage.
v3.8.1890June 17, 2014
- ‘Add WebDAV Server Implementation’ wizard added incorrect UrlRoutingModule implementation to ASP.NET MVC project that caused MVC routing table corruption. Now adding WebDAV to MVC project is fixed.
v3.8.1877June 2, 2014
- DASL search support implemented. Samples now support both file names and file content search.
- Visual Studio WebDAV wizards now support .Net Framework 4.5.2.
- ‘Allow’ header is added to Access-Control-Expose-Headers.
v3.7.1780February 16, 2014
- Wizards performance improved.
- Digest authentication provider now using TextFieldParser instead of String.Split to support comas in folder names or any comas included in quoted fields.
- Ajax File Browser initialization code generated by the wizard is updated to support Ajax File Browser v2.1 loader with progress bar and mobile/desktop version detection.
- In HttpListener-based wizards now port is randomly generated. In CalDAV/CardDAV wizards now port is set to 80 by default (because of iOS issue with no-default ports).
- CORS implementation fixed. Now 'Lock-Token' and 'If' header is added to Access-Control-Allow-Headers header, 'content-length' header is added to Access-Control-Expose-Headers.
- Issues with 'Add WebDAV Server Implementation' menus customizations in Visual Studio is fixed.
- 'Add WebDAV Server Implementation' menu is always enabled. This menu is now enabled only if WebDAV can be added to a project.
- AjaxFileBrowser folder and all files in it should not be added if ‘Create custom handler for Get verb’ is not selected.
- If Cancel is selected in the wizard it returns to the list of projects now.
v3.7.1638January 10, 2014
- “Access is denied” error when starting HttpListener project generated in Visual studio 2013. Visual Studio 2013 ignores project manifest because ‘Enable the Visual Studio hosting process’ option is checked. Now HttpListener projects generated in VS 2013 uncheck this option.
- Custom handler page now contains WebDAV Ajax Library code that opens documents for editing from server in a SharePoint-like manner.
- HttpListener WebDAV Application Custom handler page now lists folder content using Ajax File Browser asynchronous functions.
- ‘Browse using Windows Explorer’ button on custom handler page is now replaced with ‘Browse with OS File Manager’ button and utilizes WebDAV Ajax Library.
- SQLStorage sample and code generated by WebDAV wizard produced a path that started with ‘\\’ in IHierarchyItem.Path implementation. Now this bug I fixed.
- HttpListener WebDAV Server Application Basic and Digest authentication code is redesigned. Now credentials are stored in app.config file. FormsMembershipProvider is used to read the credentials similarly to ASP.NET WebDAV Server Application.
- OPTIONS request is now processed without authentication in HttpListener in case of Basic and Digest authentication.
- Exception in HttpListener WebDAV server occurred if connection during upload was closed (pause or cancel in Ajax File Browser clicked or WebDAV client crashed or closed). How HttpListenerException is captured during read and write.
- Exception was thrown in HttpListener projects if file was not found in AjaxFileBrowser folder. Now 404 Not found is returned.
- HttpListener CalDAV/CardDAV Server Application wizard is provided.
- ASP.NET CalDAV/CardDAV Server Application wizard now has authentication page with Basic, Digest and Windows options. Basic and Digest options now generate simplified ACL implementation with credentials stored in web.config.
- CalDAV application user emails now come from web.config/app.config in case of Basic and Digest authentication (used for CalendarUserAddressSet, calendar-user-address-set).
- Windows authentication in the project file is now set if Windows option is selected in wizards.
- The Ajax File Browser 'New Document' menu did not function if used with a project generated by any WebDAV wizard because of incorrect template files URLs. The WebDAV server sample files are now populated with a new Microsoft Office templates used by this menu.
- Uninstall did not remove the ‘Add WebDAV Server Implementation’ context menu in Visual Studio 2012 and 2010. Now this bug is fixed.
v3.6.1525December 16, 2013
- ‘Add WebDAV Server Implementation’ wizard failed in Visual Studio 2013 if Visual Studio 2012 was not installed on the same machine. Now this bug is fixed.
- Adding WebDAV to any MVC project in Visual Studio 2013 as well as to MVC 5 project in VS 2012 using Add WebDAV Server Implementation wizard lead to UrlRoutingModule and davLocations being missing from web.cofig that result in “404 error. The resource cannot be found.” when project run. Now this bug is fixed.
- In the case of non-default Visual Studio 2013 installation or non-default IT Hit WebDAV Wizards location installation ‘Add WebDAV Server Implementation’ wizard did not appear in Visual Studio context menu. Now this bug is fixed.
- Add WebDAV Server Implementation context menu was enabled on many non-web projects in VS 2013 and calling it leads to the exception. Now this bug is fixed.
- Tested with MVC 5 in Visual Studio 2012 provided with 'ASP.NET and Web Tools 2013.2 for Visual Studio 2012' package.
v3.6.1472November 20, 2013
- If Visual Studio 2013 is installed without Visual Studio 2012 the WebDAV wizards failed. During installation warning message requesting installation of Visual Studio 2012 or 2010 was displayed. This bug is now fixed.
- UI for CalDAV/CardDAV IIS/HttpHandler wizard is now provided. The user can now select CalDAV, CardDAV implementation options or both.
- Tested with Visual Studio 2012 Update 4.
- Wizards manual installation instructions updated.
v3.6.1443November 4, 2013
- ASP.NET CalDAV / CardDAV Application Wizard provided for Visual Studio.
- CalDAV and CardDAV sample provided.
- Visual Studio 2013 is supported now.
- .Net Framework 4.5.1 is supported now.
- Samples are now installed to C:\Users\<User>\Documents\IT Hit\WebDAV Server Engine\<version>\Samples\ folder.
- The ITHit.WebDAV.Server.dll compiled for .Net 4.0 did not run if .Net 4.0 only installed, .Net 4.5 was required. Now .Net 4.0 dll does not require .Net 4.5.
- HEAD request to folders is now processed by code generated by Wizards. WebDAV clients that require HEAD request on folders are now supported.
- Visual Studio 2012 Update 3 is now supported.
v3.5.1161June 14, 2013
- 278 status code is returned by WebDAV server implementation instead of 302 Found if WebDAV request via XHR is made and Forms authentication is used. This is because 302 code processed automatically by XHR and there is no way to process redirect to login page. Now when your server returns 278 status code the Ajax library will extract ‘Location’ header and redirect to url specified in it.
- When switching to older version of the WebDAV wizard without restarting Visual Studio generation failed if .Net 4.5 was selected. Now this bug is fixed.
- ‘This program has compatibility issues’ warning no more displayed if SQL storage is selected in wizards and Visual Studio 2012 is used. Connection string is now set to Microsoft SQL Express LocalDB format in the generated web.config file.
- Samples are now using Microsoft SQL Express LocalDB connection string by default.
- ITHit.WebDAV.Server.xml is now added to bin folder to enable Intellisense.
- Windows Service name generation improved in HttpListener WebDAV Application wizard. It now analyses both stopped and running service names.
v3.5.1122May 30, 2013
- HttpListener Wizard with Windows Service and console functionality added. All WebDAV options are identical to ASP.NET WebDAV Application wizard.
- Versioning implementation refactored. Auto-versioning issues fixed. Now you can use auto-versioning with Ajax File Browser, Miniredirector, Microsoft Office, etc. DeltaV sample default auto-versioning mode is set to CheckOutUnlockedCheckIn.
- Now all files are put under version control by default when DeltaV is selected. New option added: “Enable Version control on all initial files in your storage.”.
- Files uploaded using Microsoft Mini-redirector/Web Folders now pick initial Creation and Modification dates from your local file system. The implementation generated by WebDAV wizard now processes Win32CreationTime and Win32LastModifiedTime in UpdateProperties implementation.
- IResumableUpload.CancelUpload implementation generated by wizards now deletes the file that did not finish uploading if DeltaV was not selected. If you are using Ajax File Browser, the file is deleted when you cancel the upload.
- Windows authentication was set in web.config when anonymous was selected in ASP.NET WebDAV Server Application wizard. This is now changed to ‘None’.
- \Server\bin\.Net 4.0\ folder contained ItHit.WebDAV.Server.dll compiled for .Net Framework 3.5 instead of 4.0. Now this bug is fixed.
- Project generated by ASP.NET WebDAV Server Implementation wizard is set to open WebDAV root folder by default (instead of opening file selected in a Visual Studio project tree).
- MyCustomHandlerPage.aspx and MyCustomHandlerPage.html generated by wizards now reference a new Ajax File Browser v1.5.x style.
- Quote option is now checked by default in wizards.
- Tested with Visual Studio 2012 Update 2.
- Documentation updated.
v3.1.980March 14, 2013
- ITHit.WebDAV.Server.dll and MSI install package and install components are now digitally signed.
- WebDAV Server Wizards for Visual Studio did not support Windows display item size larger than 100%, the Wizard dialogs were distorted. Now any Windows display items sizes are supported.
- Class1Listener sample showed a generic error message during start if the database connection did not work. This bug is now fixed.
- File Storage location field in WebDAV Wizards displayed an incorrect error message when left empty. This bug is partially fixed.
- If the project name contained special characters incorrect namespace was generated. This bug is now fixed.
- If web.config of the project file is read-only and user did not allow removing the read-only flag during Wizard execution generation failed. This bug is now fixed.
- If .NET Framework 4.0/4.5 is installed and 2.0 - not, the application will install incorrectly, some functions do not work and uninstall fails. This bug is now fixed.
- Error message during install if .NET Framework 4.0 is not installed. This bug is now fixed. If no VS 2010 and 2012 installed warning before the installation is displayed.
- Now user can post to Twitter, Facebook and Google+ from WebDAV Wizards dialogs.
- Icons, logo and install design updated.
- Tested with Update 1 of Visual Studio 2012.
v3.1.869January 4, 2013
- If the Microsoft Visual Studio is installed in the non-default location, ASP.NET WebDAV Server Application Wizard did not appear in projects templates list. Now this bug is fixed.
- Exception during check-in if DeltaV is enabled. Now this bug is fixed.
v3.1.864November 23, 2012
- The 'Add WebDAV Server Implementation...' wizard now offers to overwrite read-only files (for example project file and web.config file if the project is under TFS source control).
- If .Net 4.x is selected when WebDAV wizards are used, the requestPathInvalidCharacters is set to "" in web.config. This allows '&' and '%' in IIS integrated mode.
- If .Net 4.x is selected when WebDAV wizards are used, the relaxedUrlToFileSystemMapping is set to "true" in web.config. This allows trailing dots ('.').
- debug="true" is now set in the compilation element in web.config if WebDAV Server Application Wizard runs in VS 2012.
- If the user provided expired license the license wizard crashed. Now this bug is fixed.
- WebDAV wizards did not set AutoPutUnderVersionControl and AutoVersionMode options in web.config. Now this bug is fixed.
- System.InvalidCastException 'Unable to cast object of type 'System.Int32' to type 'System.String'.' when DelatV options are selected. Now this bug is fixed.
- Folders existing before generating are not removed during rollback. Now this bug is fixed.
- Random IIS Express port was incorrectly generated sometimes. Now this bug is fixed.
v3.1.775September 28, 2012
- Visual Studio 2012 and .NET 4.5 is now supported.
- MVC 4 is now supported.
- Rollback is now performed if any errors during files generation by VS WebDAV Wizard occurred.
v3.0.556July 23, 2012
- ETag in If-Range header is now supported. If the download is paused in IE, then file is updated on the server side and then download is resumed the file appeared to be corrupted. Now if the file was updated the IE starts download from the beginning.
- On some systems, Visual Studio WebDAV Wizards throw System.TypeInitializationException ... ---> System.IO.FileNotFoundException: Could not load file or assembly ... exception. The 'Add WebDAV Server Implementation...' context menu did not show. Now this bug is fixed.
- Samples now attach Content-Disposition header if URL contains '?download' string. If WebDAV Server sample is tested with Ajax File Browser and user selects 'Download' the file is downloaded instead of opening in the web browser.
v3.0.520June 22, 2012
- If WebDAV client specified 'infinite' in Timeout header, null was passed into ILock.Lock in timeOut parameter. Now TimeSpan.MaxValue is passed. Null is passed only if Timeout header is not specified. LockInfo.TimeOut property is now nullable.
- Unit tests added to source codes version to check Infinite header.
v3.0.515June 14, 2012
- If .NET Framework 4.5 Beta or RC is installed the AmbiguousMatchException: 'Ambiguous match found' was thrown. The .NET Framework 4.5 Beta and RC are now supported.
- Ajax File Browser + Basic/Digest + IE + MS Office 2007 caused documents to be opened as read-only. If 'Edit Document' is selected from a Microsoft Office document in Ajax File Browser in Internet Explorer and Microsoft Office 2007 is installed and Basic or Digest authentication is used the file opened as read-only. This issue is now fixed.
- Manual Wizards installation instructions clarified and fixed.
v3.0.497 ReleaseApril 7, 2012
- Two versions of ITHit.WebDAV.Server.dll are now provided: for .Net 3.5 and .Net 4.0. WebDAV Wizards now reference the required dll depending on the .Net version used in a project.
- If-Range header is now supported.
- The WebDAV Wizards for Visual Studio now can run side-by-side, no need to uninstall previous release versions.
- Zip file with content identical to MSI package is available for download.
- Microsoft Office cannot save the document back to the server if Visual Studio Development Server is used. Now this bug is fixed.
- Lock request without Timeout header resulted in NullReferenceException. This bug is now fixed.
- Uninstall did not remove Start menu items, 'ASP.NET WebDAV Server Wizard' project shortcut in projects list in Visual Studio and Visual Studio addin file. All above items are now removed during uninstall.
- Concurrent unlock issue fixed in the code generated by wizards for file system storage and in NtfsStorage sample.
- Incorrect content length calculation fixed in the code generated by wizards for file system storage and in NtfsStorage sample.
- Incorrect namespace is generated if the project name starts with a digit. This bug is now fixed.
- Class reference documentation fixed and updated.
v3.0.316 BetaJanuary 17, 2012
- Unbuffered PUT upload in IIS and IIS Express is now performed using new .Net 4 API.
- Now '+' and trailing dots in file names are fully supported when using IIS.
- Modified date issue fixed. Now Mac OS X Error -36 if fixed when uploading files.
- If .Net Framework 4 is selected in 'ASP.NET WebDAV Server Application' wizard the project is created using .Net Framework 3.5. Now this bug is fixed.
- Digest authentication fixed. OPTIONS request does not require authentication no more when using wizards.
- Namespace generated by the Wizard may contain spaces if the project name contained spaces.
- Class reference fixed, new examples added and online documentation provided.
- Source codes are available for download for source codes license owners.
v3.0.284 BetaNovember 2, 2011
- WebDAV Server Implementation Wizard for Visual Studio. Now you can add WebDAV support to your existing ASP.NET Web Site, Web Application or MVC 2 and MVC 3 projects that run on IIS, Visual Studio Development Server or IIS Express.
- Mixed authentication sample authentication code generated by Wizard. Your WebDAV server now can use Forms/cookies authentication together with Basic or Digest.
- Microsoft Extensions for WebDAV support. Now you can set any file attributes on WebDAV items, such as system, hidden, offline etc.
- Interfaces simplified. Lock-null items and interfaces removed.
- RFC 4918 Class 3 support. The server now returns detailed information about the error.
- RFC 4331 Quota support. You can report how much space is available on the server side.
- RFC 3744 ACL support. You can manage users, groups and set granular permissions on files.
v126.96.36.199March 22, 2011
- Now server supports uploads with unknown content length. The Content-Range header can be passed in 123-456/* format.
- Timeout increased in SqlStorage and NtfsStorage samples to support uploads and downloads that last over 30 minutes.
v188.8.131.52February 11, 2011
- ITHit.WebDAV.Server.dll now provided both for .Net 4.0 and .Net 2.0.
- In SqlStorage and DeltaV samples, Basic authentication requires OPTIONS request authentication no more. These samples now support Firefox cross-origin requests.
- In DeltaV sample, Mime-type now is being read from MimeType.GetMimeType instead of saving the one submitted by the client. This is due to Firefox may submit incorrect mime-type.
- web.config in SqlStorage and NtfsStorage updated to support '+' character. Workaround for '&' and '%' is described in web.config comments.
- Visual Studio 2010 Sample projects now reference .Net 3.5 by default.
- NtfsStorage sample may return incorrect file size when used with .Net 4.0. Now this bug is fixed.
- Cross-origin requests for a copy and move fail. Now Overwrite and Destination headers are added to Access-Control-Allow-Headers to support copy and move.
- Null reference exception is logged in Class1Listener if item is not found. This bug is now fixed.
- Tested with iPad iWork Pages, Keynote and Numbers, iOS 4.2.
v184.108.40.206July 21, 2010
- Engine now attaches headers that enable cross-domain requests from AJAX.
- Default 443 SSL port is removed from URLs returned by the server.
- Web.config in NtfsStorage and SqlStorage samples updated to support ASP.NET 4.0.
- Visual Studio 2010 now supported. Visual Studio 2010 projects added.
- Tested with .Net Framework 4.0.
- Tested with Microsoft Office 2010.
v220.127.116.11February 2, 2010
- Fixed upload with Content-Range header in Windows Server 2008 R2 Release.
v18.104.22.168August 6, 2009
- URLs are treated in case-sensitive way now.
- Deltav sample can upload files in unbuffered mode when NTLM authentication is used.
v22.214.171.124May 1, 2009
- Chunked upload of large files failed in ASP.NET-based servers if ResumableUpload module is enabled. This bug is now fixed in IIS 7, IIS 6 and IIS 5.1 on Windrows 2008, Vista, 2003, XP 64-bit and on Windrows 2008, Vista and 2003 32-bit. The bug still exists on Windows XP 32-bit.
- Infinite lock was incorrectly saved in NtfsStorage sample. Now this bug is fixed.
- Web.config files in SqlStorage and NtfsStorage samples are now suitable for use in IIS 5.1, 6.0 and IIS 7.0 both in classic and integrated mode with no changes.
v126.96.36.199April 15, 2009
- ILock.RefreshLock method implementation in NtfsStorage sample fixed. The lock failed to prolong previously.
v188.8.131.52March 26, 2009
- Content-Encoding header is used to determine encoding when parsing XML.
- Output Content-Encoding header now contains sharset when writing XML. The encoding is specified by new Engine.ContentEncoding property.
- Workaround for Mac OS X Finder upload bug provided in DeltaV sample. Finder uploaded files of 0 bytes in size to HttpListener-based WebDAV server because of broken chunked header.
- NtfsStorage sample stored timeout value, instead of the time when the lock was applied. As a result server did not calculate the time when the lock should be removed. Now this bug is fixed.
- VS 2008 projects and solutions added. Reference to ITHit.WebDAV.Server.dll in samples fixed.
v184.108.40.206January 21, 2009
- Improved performance.
- Fixed bug in NtfsStorage and DeltaV samples - file did not close after creation. On some Windows XP machines, MS Office 2007 applications could not save the new file directly to the server.
- POST-upload now returns multistatus XML in the response body. AJAX applications can use this XML to detect that file upload finished successfully when uploading via iframe.
v220.127.116.11November 19, 2008
- Fixed bug with excessive CPU usage after breaking POST upload.
- Fixed bug with PUT failure if server is mapped to non-root application in IIS / ASP.NET.
- Fixed bug with upload failure on some Windows XP and Windows Server 2003 machines.
v18.104.22.168November 14, 2008
- NtfsStorage sample added. FileSystemListenerService and Class2SqlListener samples removed. WebDAVListener renamed to Class1Listener. web.config files better optimized for use with IIS 7.
- 2 overloaded Engine.Run methods added, designed use in HttpListener and in IIS / ASP.NET.
- Custom properties now wrapped to CDATA.
- IsComplete Field removed from database script in DeltaV sample
v22.214.171.124October 29, 2008
- During PUT and POST request when server is hosted in IIS HttpRequest.PhysicalApplicationPath returned empty path, as well as some other properties of HttpRequest, returned incorrect values. Now this bug is fixed.
- Content-Type: text/HTML header is now returned in response to POST multipart request. This eliminates File Open/Save dialog in Firefox when form upload URL is targeted to a file with a registered extension (.docx, .pdf, etc).
v126.96.36.199October 25, 2008
- Resumable upload provided. PUT request now supports Content-Range header. Segmented upload of files over 2 Gb to IIS / ASP.NET.
- Interfaces for reporting upload progress provided.
- Module for streamlined upload in IIS provided. Significantly improved performance, no content is buffered in temporary ASP.NET folder.
- Upload via POST multipart request provided. Files could be uploaded using HTML form.
- DeltaV sample now supports resumable upload, auto-versioning disabled by default.
v188.8.131.52October 23, 2008
- Content-Range header parsing fixed in GET method processing.
- If the client did not attach Overwrite: T header and the target file exists the server returned 412 error. This bug is fixed.
v184.108.40.206September 9, 2008
- Transaction isolation level changed to "read uncommitted" in all samples that use transactions. Previously when user was uploading a file entire folder was blocked until file is uploaded. Now this problem is fixed.
- Manifest elevating privileges added to all samples based on HttpListener. The HttpListener requires Administrator privileges, so the manifest is mainly required on Windows Vista.
- DeltaV UPDATE request failed if the URL contained spaces and some special characters. Now this bug is fixed.
v220.127.116.11April 18, 2008
- Lock token from Lock-Token header submitted with UNLOCK request now added to Request.ClientLockTokens list.
- Fixed response to checked-in state request. PROPFIND with checked-in and checked-out properties previously returned incorrect response.
- When all properties were requested for a version (PROPFIND allprop) server returned displayname, resourcetype, contentlength, supportedlock, lastmodified, etc. Now these properties are not returned by the server. According to DeltaV specification these properties for version items must be requested only explicitly.
- Version 3 REPORT fixed when report requested for a single version.
- Optimized versions listing. Previously versions list was requested via IHistory.RootVersion and IVersion.Predecessor. Now versions are requested via IHistory.VersionSet.
- AutoVersionin fixed. The auto versioned item did not check-in during unlock.
- In WebDAVListener sample incorrect URL was returned - missing ‘\’.
- DeltaV sample throw NullReferenceException when set to Digest authentication and NetDrive WebDAV client is used (NetDrive does not support Digest).
- DeltaV sample - check-in, check-out, uncheck-out, update-to-version did not check locking.
v18.104.22.168February 6, 2008
- Custom method handlers support and sample implementation provided in SqlStorave, DeltaV and Class2SqlListener.
- Auto-versioning modes implementation changed.
- If-Modified-Since header support for GET requests added (important when server used with Windows Vista Web Folders).
- Digest and Basic authentication fixed when used with Windows Vista Web Folders.
- UserAgent property added to Request class.
v22.214.171.124 Beta 1December 6, 2007
- RFC 3253 Core-Versioning Package added. Version-Control feature, UPDATE feature, Version-History feature, and auto-versioning provided.
- DeltaV sample with Basic, Digest and IWA authentication added.
- New transactions management approach provided.
- GetPropertyNames method and Path property added to IHierarchyItem interface.
v126.96.36.199November 19, 2007
- Content-Length header check removed from PROPFIND handler. Now chunked PROPFIND requests are supported.
- License check code changed.
v188.8.131.52October 28, 2007
- Folder and file names now support ‘+’ character.
- MimeType class provided for getting mime type by file extension. IResource.ContentType implementation in all samples now utilizes this new class to return correct Content-Type header in GET requests. This fix is important for Firefox users. Firefox relies on Content-Type header when deciding which action to perform when downloading a file, while IE relies on file extension.
v184.108.40.206June 24, 2007
- Class 2 HttpListener sample implementation added.
- Windows Service sample added.
- Fixed locking implementation in SqlStorage sample.
- Fixed logging exception on highly loaded servers.
- Added PROPFIND Depth: infinity implementation.
- MS-Author-Via: DAV header added to all responses.
- Engine: IT Hit WebDAV Server .Net v1.0 header added to all responses.
v220.127.116.11 Final releaseJanuary 2, 2007
- Range / Content-Range header support added.
- Calculation of response content length. Chunked encoding transfer fixed.
- Improved logging functionality.
- Fixed 2Gb upload limitation in HttpListener.
- Basic Authentication sample implementation added.
v18.104.22.168 Beta 2August 31, 2006
- Redesigned interfaces.
- HttpListener-based WebDAV sample added.
- Number of bugs fixed for Windows XP and Office 2003 clients.
v22.214.171.124 Beta 1May 5, 2006
- IIS/HttpHandler-based WebDAV server engine and sample provided.