Ryan Nowak
e3ce1f52d4
Added Conflict result helper to ControllerBase
...
- Added ConflictObjectResult and ConflictResult types.
- Conflict(), Conflict(object error), Conflict(ModelState modelState)
added to ControllerBase.cs.
Fixes #6172
2017-10-02 15:05:57 -07:00
Ryan Nowak
be5d4ec11e
Undo a breaking change
2017-10-02 13:12:25 -07:00
Jass Bagga
2fcfc6be7c
Add EnableRangeProcessing ( #6895 )
...
Addresses #6780
2017-09-29 18:39:45 -07:00
Jass Bagga
eeac99985a
Only set Content-Length when serving body ( #6886 )
...
Addresses #6875
2017-09-25 15:07:12 -07:00
Kiran Challa
83c3ac62fb
Updated formatters to wrap exceptions in InputFormatException for invalid input
2017-09-22 14:33:17 -07:00
Javier Calvarro Nelson
f24d71136a
Add breaking changes file
2017-09-22 13:53:51 -07:00
Javier Calvarro Nelson
a8eda83222
Add MVC 2.0 baselines
2017-09-22 12:53:12 -07:00
Ryan Nowak
38712609bb
Design extensibility for executors
...
We have all of these executors but they aren't really
documented/supported for extensibility today. This change introduces a
pattern for action result executors so we can make them extensible.
2017-09-22 10:32:55 -07:00
Pranav K
5d1603c37f
Replace ProblemDetailsAttribute with ApiControllerAttribute
2017-09-22 10:26:13 -07:00
Kristian Hellang
97fab8711a
Add UnprocessableEntityResult, UnprocessableEntityObjectResult and ControllerBase.UnprocessableEntity methods ( #6851 )
...
* Added UnprocessableEntityResult
* Added UnprocessableEntityObjectResult
* Added UnprocessableEntity overloads to ControllerBase
Fixes https://github.com/aspnet/Mvc/issues/6795
2017-09-22 09:27:29 -07:00
Pranav K
197ef139d6
Provide a way within the Page/PageModel to run code before any handler runs
...
Fixes #6606
2017-09-22 09:25:22 -07:00
Steve Sanderson
236ef5d1d1
Support validation and BindBehavior on top-level action parameters and bound properties. Fixes #6790
2017-09-22 10:13:48 +01:00
Charlie Daly
324db455d9
ControllerBase helpers refactored with lambda syntax.
...
- Addresses #6864
2017-09-21 13:19:33 -07:00
Pranav K
7f214492b8
Introduce a filter to send bad request results with details when ModelState is invalid ( #6849 )
...
* Introduce a filter to send bad request results with details when ModelState is invalid
Fixes #6789
2017-09-21 11:09:32 -07:00
Pranav K
f0a5af2ba7
Revisit the unwrapping code in ControllerActionInvoker
...
Fixes #6679
2017-09-19 09:49:37 -07:00
Kiran Challa
23b7d8f62a
Added RequestFormLimits filter.
...
[Fixes #5128 ] Overriding Request Form max upload limit
2017-09-18 13:48:15 -07:00
Ryan Nowak
e114911d77
Introduce [ApiController]
...
This puts a de-facto metadata approach in the box to declare
unambiguously 'Hey, I am an API!'.
I think this is worth us doing at this point because I haven't really
seen anyone in the community running with targeting conventions at
equivalence classes of controllers.
Now that we're putting API-specific, opinionated behaviors in the box,
we need to away to make it opt-in and declarative.
2017-09-18 12:43:05 -07:00
Ryan Nowak
c09575dbd0
Fix #4914 patternize filter overrides
...
Adding some convenience methods to the context class and updating our
code to use them.
2017-09-18 12:12:44 -07:00
Pranav K
776c2604f8
Introduce opinionated API defaults.
...
* Introduce ProblemDescriptionAttribute to enhance some 4xx messages and produce better API description.
* Introduce IErrorDescriptionProvider to modify the shape of error response.
Fixes #6785 , Fixes #6786
2017-09-14 17:07:34 -07:00
Kiran Challa
35601f95b3
Added a model binder for handling Enum types. [ Fixes #6329 ] Why don't we check for Enum.IsDefined on action parameters of enum type
2017-09-14 08:25:05 -07:00
Ryan Nowak
db2d9ee56f
Additional fixes for #4604
2017-09-13 23:39:00 -07:00
Kiran Challa
4f18d99d02
Added RedirectToAction overload with no arguments
2017-09-12 17:17:48 -07:00
Kiran Challa
06f6de6c11
Changed RequestSizeLimitAttribute to create an authorization filter rather than a resource filter.
...
[Fixes #6777 ] RequestSizeLimit is ignored
2017-09-12 17:03:24 -07:00
Pranav K
de38922601
Allow BindPropertyAttribute to be applied on PageModel
...
Fixes #6653
2017-09-12 10:34:19 -07:00
Christiaan
a8b7904b00
Fix logger category of FileStreamResultExecutor
...
FileStreamResultExecutor creates a logger for VirtualFileResultExecutor. I suspect this is a copy-and-paste error and creating one for FileStreamResultExecutor was intended instead.
2017-09-08 11:09:20 -07:00
Pranav K
717f1e6f7d
Normalize paths in RazorViewEngine prior to invoking page factory
...
Fixes #6672
2017-09-07 11:36:31 -07:00
Pranav K
a7cc243942
Introduce ProblemDescription
2017-09-06 18:46:35 -07:00
Pranav K
151cf44607
Introduce ActionResult<T>
2017-09-06 18:46:06 -07:00
Adrian Wright
1d1a5203db
Fix spelling mistakes in xml comments ( #6755 )
2017-09-05 12:52:13 -07:00
Ryan Nowak
257d202a14
Make AddMvcCore docs scarier
...
Fixes #6632
2017-08-31 08:01:29 -07:00
bchavez
16c267d95e
House Cleaning - Spelling and grammar 🚿
2017-08-30 14:58:44 -07:00
Nate McMaster
b811e69d00
Use PackageLineup to manage PackageReference versions
...
- Move the Mvc.Performance project from test/ to benchmarks/.
- Remove the Version attribute on PackageReference.
- Add a reference to two PackageLineup's.
- Add snippet to README explaining the additional requirement to run build.cmd /t:restore.
- Add a target to check that packages have been pinned.
2017-08-30 12:14:11 -07:00
Pranav K
900a5c7c4c
Add support for ResponseCache in Razor Pages
...
Fixes #6437
2017-08-18 16:25:40 -07:00
Nate McMaster
b43b244830
Use Directory.Build.props/targets
2017-08-16 12:30:13 -07:00
Javier Calvarro Nelson
f2a8c1cea7
Refactor CORS support out of MVC Core
2017-08-14 11:40:56 -07:00
Pranav K
a5b55edb93
Fix filter order ( #6577 )
...
* Fix filter order
2017-07-21 10:50:34 -07:00
Hao Kung
36e24b7a31
Fix AuthZ Regression ( #6574 )
2017-07-20 21:18:53 -07:00
Jass Bagga
b4fe715c71
Revert breaking change ( #6519 )
...
Addresses #6518
2017-07-07 17:09:36 -07:00
Pranav K
288da1a405
RedirectToPage(page, handler) does not work ( #6503 )
...
Fixes #6436
2017-07-06 14:12:57 -07:00
Doug Bunting
c351712419
Add `FloatingPointTypeModelBinderProvider` and related binders
...
- #5502
- support thousands separators for `decimal`, `double` and `float`
- add tests demonstrating `SimpleTypeModelBinder` does not support thousands separators for numeric types
- add tests demonstrating use of commas (not thousands separators) with `enum` values
2017-07-03 17:55:04 -07:00
Ryan Brandenburg
057a853de7
DiagnosticSource to 4.4.1
2017-07-03 15:03:34 -07:00
Hao Kung
eeee3ef731
Add SignOut overload + Use new auth api ( #6476 )
2017-07-03 12:32:11 -07:00
Pranav K
bc4328de16
Add entry to breakingchanges.json
2017-06-30 15:44:21 -07:00
Henk Mollema
948982ebff
Create custom collection for model binder providers
...
Fixes #6161
2017-06-30 15:44:07 -07:00
Doug Bunting
f76a390a4e
Fall back to linear search for prefix matches
...
- #6469
2017-06-30 10:59:07 -07:00
Jass Bagga
17f6b17a6d
Add RequestSizeLimitAttribute ( #6453 )
...
Addresses #6352
2017-06-29 13:04:27 -07:00
Doug Bunting
a90f4118ad
Do not include type names in `ModelState` error messages
...
- #6076
- add resources and accessors specifically for the element / parameter cases
- avoid `metadata.GetDisplayName()` where possible
- fill in the `ValidationContext` that `ValidatorObjectAdapter` uses
- e.g. `Validate_NestedComplexType_IValidatableObject_Invalid()` test fails without this
Possible future work:
- improve error message used for `ModelMetadata.IsRequired` elements and parameters
- use something besides the type for `ValidationContext.DisplayName` of elements and parameters
nits:
- trailing whitespace
- use more `out var`
2017-06-28 15:16:23 -07:00
Henk Mollema
7166dfecd7
Add generic overloads on FilterCollection
2017-06-28 09:03:48 -07:00
Ryan Nowak
1886d53d89
Remove [BindProperty] on class
...
This isn't a good fit with consistency with controllers. Discussed with
@DamianEdwards and we agreed to remove this for now and bring it back in
the future if there's a real need for it.
2017-06-28 08:18:42 -07:00
Pranav K
9acfc8d221
Watch _ViewImports outside the pages root for changes
...
Fixes #6428
2017-06-27 09:30:07 -07:00
Ryan Nowak
0ad9c7d4eb
Making Pages Binding Consistent
...
This changeset reckonciles the binding work we did for pages with
controllers.
A quick summary:
- Moves [BindProperty] to the MVC namespace (#6401 )
- Makes [FromRoute] and friends behave consistently (#6402 )
- Makes [BindProperty] work with controllers (untracked)
2017-06-26 18:11:44 -07:00
Pranav K
f824704741
Cleanup fileLength use
2017-06-18 11:05:49 -07:00
Pranav K
c27b07ef3f
Use C# 7 features
2017-06-11 22:11:51 -07:00
Pranav K
1c4b0fcdf3
Code clean up
2017-06-09 22:38:46 -07:00
Pranav K
b1b7252ddc
Merge pull request #6383 from aspnet/rel/2.0.0-preview2
...
Modify ControllerBase.RedirectToPageResult to call the correct overload
2017-06-09 15:11:23 -07:00
Pranav K
d92d8cddeb
Modify ControllerBase.RedirectToPageResult to call the correct overload
2017-06-09 14:40:29 -07:00
Pranav K
a5f3a6425e
Remove TaskCache and TaskCacheOfT
2017-06-08 08:19:20 -07:00
Jass Bagga
7ffd88757d
Respond to RangeHelper refactor ( #6348 )
...
Respond to https://github.com/aspnet/StaticFiles/pull/200
2017-06-06 11:22:35 -07:00
Kiran Challa
f1dd475eae
Merge branch 'rel/2.0.0-preview2' into dev
2017-06-06 09:35:33 -07:00
Kiran Challa
af91b58bd3
Enabled a way to buffer request body in formatters
2017-06-06 09:33:32 -07:00
Ryan Nowak
b796bc0f39
Add Page filters
2017-06-05 08:05:49 -07:00
Kiran Challa
03e696a05e
Merge branch 'rel/2.0.0-preview2' into dev
2017-06-01 15:19:13 -07:00
Jass Bagga
4e91e4e36f
Correct short-circuit log message for result filters ( #6350 )
...
Addresses #6318
2017-06-01 14:01:08 -07:00
Kiran Challa
0f0cfdfe94
Removed unnecessary package references
2017-06-01 12:02:05 -07:00
Jass Bagga
a0d9b08f58
Set Content-Length and increase BufferSize ( #6347 )
...
Addresses #6045
2017-06-01 11:27:49 -07:00
Pranav K
3089bf74fe
Remove reference to Microsoft.Extensions.PlatformAbstractions
2017-05-27 17:22:05 -07:00
Ryan Nowak
84e007a2a7
Move exception and result filters in base
2017-05-26 12:33:46 -07:00
Ryan Nowak
e7bd6cfc06
Refactor invoker tests for reuse
2017-05-26 12:33:46 -07:00
Hao Kung
4c2d727e38
React to Auth + switch to Policy Evaluator
2017-05-25 18:23:41 -07:00
Ryan Brandenburg
9ea37a1bbb
Fix TFM build breaks
2017-05-25 13:12:39 -07:00
Ryan Brandenburg
03404cd3df
Return to NetStandard
2017-05-25 10:34:16 -07:00
Ryan Nowak
2992f8e38a
Separate PageContext and ViewContext
...
This change decouples PageContext and ViewContext completely.
2017-05-24 16:01:52 -07:00
Chris R
53c56f558b
React to StringSegment changes
2017-05-23 14:01:44 -07:00
Pranav K
c5f771d96d
Use factory pattern for caching in ControllerActionInvoker
2017-05-22 13:05:55 -07:00
Jass Bagga
9aff0a67c1
Range support for FileResult( #6150 )
...
Addresses #3702
2017-05-19 10:51:46 -07:00
Mardoxx
ece5e748ad
Minor documentation fix for SerializableError
...
ModelStateEntry -> ModelStateDictionary
2017-05-18 11:02:23 -07:00
Ryan Nowak
4d905a4110
Make our executor methods virtual
...
Fixes #5874 - we are marking these methods virtual just in case someone
wants to customize the executors. These are in the 'public internal'
namespace but can't really be replaced because they aren't sufficiently
virtual.
2017-05-16 08:43:45 -07:00
Henrik W. Moe
af7303cd8d
Corrected xml-comment for the User-property
...
Removed comment about setting the User. `User` property only supports `get`.
2017-05-16 08:01:38 -07:00
Jass Bagga
cd6befdef1
Assign unique event Ids in the logger ( #6270 )
...
Addresses #6062
2017-05-15 11:52:52 -07:00
Pranav K
42a4e9a143
Make uses of ObjectMethodExecutor internal
2017-05-10 21:17:51 -07:00
Pavel Krymets
cf64b335f6
Remove unnecessary package references ( #6252 )
2017-05-10 12:06:10 -07:00
Pranav K
7d28714d9a
Pin build of ObjectMethodExecutor to allow breaking change to go thru first
2017-05-10 10:15:14 -07:00
Steve Sanderson
014a786b45
Replace IModelBindingMessageProvider with new highly-virtual base class ( #6241 )
...
Replace IModelBindingMessageProvider with new highly-virtual base class. Fixes #6069
2017-05-10 16:02:18 +01:00
Ryan Nowak
e2cb8e8ac8
A new and exciting implementation of action selection
...
This is an improved implementation of the ActionSelector for conventional
routing. This will do fewer dictionary lookups than the decision tree, and
will avoid OrdinalIgnoreCase hashing in the common case.
2017-05-05 17:54:09 -07:00
Pranav K
64ffcfaa89
Merge pull request #6236 from aspnet/rel/2.0.0-preview1
...
Change TFM to netcoreapp2.0 (#6234 )
2017-05-04 22:18:48 -07:00
Pranav K
1c5e417606
Change TFM to netcoreapp2.0 ( #6234 )
...
* Change TFM to netcoreapp2.0
2017-05-04 18:11:26 -07:00
Steve Sanderson
6f3a295041
React to new ObjectMethodExecutor in Common
2017-05-03 15:40:02 +01:00
Ryan Brandenburg
42b988ad88
./ paths relative on page.
2017-04-25 11:57:58 -07:00
Smit Patel
bd39d36d75
Update API Check related files
...
React to aspnet/BuildTools#238
2017-04-25 08:19:00 -07:00
Pranav K
649ee4d28d
Add support for page handler to URL generating APIs.
2017-04-24 22:56:58 -07:00
Ryan Nowak
04fd762943
Rename form-action -> handler
2017-04-24 14:15:35 -07:00
Doug Bunting
141b637d20
Bump `MemoryPoolHttpResponseStreamWriter` buffer size up to 16K `char`s
...
- #3516
- fix tests that relied on otherwise-unused `HttpResponseStreamWriter.DefaultBufferSize`
2017-04-23 16:15:58 -07:00
Pranav K
f568d3c2bc
Support finding "sibling" pages when using RedirecToPage
...
Fixes #6083
2017-04-21 18:12:52 -07:00
Ajay Bhargav Baaskaran
8eac7c2d6c
[ Fixes #6117 ] Added RedirectToPage overloads to Controller
2017-04-21 12:19:35 -07:00
Christopher Dresel
025870e8b9
Fix #6159 - Fix deep copy for ControllerModel and ActionModel
2017-04-21 07:41:14 -07:00
Hao Kung
ea3becb3ca
Reenable APICheck
2017-04-20 13:48:26 -07:00
Andrew Stanton-Nurse
a975d7fa01
react to removal of PlatformAbstractions ( #6164 )
2017-04-20 11:09:18 -07:00
Ryan Nowak
4bf518b09b
Fix #6140 - Allow linking between controller and page
...
The issue here is that route values used for action selection are
'global'. That means that pages need to have a 'null' route value for
'action' and controllers need to have a 'null' route value for pages. This
is the same way that areas work.
The fix is to move the 'merge' of route values up to a level where pages
and controllers can work together. Since ADPs use the russian-doll
pattern, the fix is to run this 'merge' in the controller ADP, but after
all of the ADs have been created.
2017-04-19 16:48:38 -07:00
Hao Kung
6cd487e15f
Disable api check temporarily to unblock build
2017-04-19 16:07:23 -07:00
Ryan Brandenburg
c9bfd2296d
Parity between Controller and Page/PageModel
2017-04-19 15:02:06 -07:00