This commits also gets rid of the name
closure in FormFileCollection by interating
over the files in the collection instead
of using Find and FindAll.
Closes#352 and #499
- If the user wants to use the SendFile API directly then they can access the feature
explicitly.
- Removed SupportsSendFile
- Don't check for existence, let FileStream throw
- Updated Doc comments
- Pass the buffer into StreamCopyOperation
- Using a real using instead of try finally.
The main intent is cleanup using C# 6 operators and normalization of
type aliases. While there are no intended functional changes here, it
does eliminate a few tight race conditions as a bonus (not a real-win
since this isn't thread-safe all over, simply noting).
- prior test encoders were never invoked for `null` or empty `string`s e.g.
``` c#
public static void HtmlEncode(this IHtmlEncoder htmlEncoder, string value, TextWriter output)
{
...
if (!String.IsNullOrEmpty(value))
{
htmlEncoder.HtmlEncode(value, 0, value.Length, output);
}
}
```
- add missing `null` checks and handle `string.Empty` in `TextWriter output, string value, ...` overloads
- better match for the underlying `TextEncoder` behaviour
- `EncoderExtensions` provided an API like `TextEncoder.Encode(TextWriter output, string value)`
- that method calls `Encode(TextWriter output, string value, int startIndex, int characterCount)`
- aspnet/Mvc#3138 part 1/2
- check parameters with same polarity as type and subtype
- ignore quality factors
- bug was obscured because MVC has no formatters supporting wildcard media types
nits:
- add doc comments
- spelling
- correct typo in a `project.json` file
- Add public struct enumerator (avoids enumerator allocations)
- Implement IReadOnlyList<string>
- Rename indexer parameter name from "key" to "index"
- Faster IndexOf (no more enumerator allocation & faster array enumeration)
- Faster Contains (no more box allocation)
- Faster CopyTo (no more enumerator allocation)
- Faster Concat (no more enumerator allocations; use CopyTo)