Advanced Technical Design

When we create server side controls we do it properly. We code in C# for unsurpassed performance, control and stability. All our classes are 100% CLS compliant and 100% Managed*.

Uploads are only copied to memory when required. This means that even for large uploads ABCUpload will use only a small amount of memory. Caching on disk is invisible to the user and uses advanced Windows techniques to ensure that the division of data between disk and memory is handled optimally.

ABCUpload is multithreaded to take full advantage of multiple processors. In particular, time wasteful operations such as disk access, are serialized to other threads to ensure that no bottlenecks occur.

* All core operations within our .NET products are 100% managed code and most users will only ever want to use these core operations. However .NET does not currently support all the features that the Windows API allows access to and the only way to get at these features is via unmanaged calls into the OS. We don't want to limit you unnecessarily so we isolate and clearly mark any methods that might use unmanaged code. If you want to use these methods you will need to ensure that your ASP.NET permission allows you to call unmanaged code via ABCUpload.

In ABCUpload the only method that uses unmanaged code is the UploadedFile.SaveSFM method for saving files in Services for Macintosh format.