Commit Graph

2632 Commits

Author SHA1 Message Date
Pranav K dfa085afaf Add support for areas to Razor Pages
Fixes #6926
2017-12-19 15:03:05 -08:00
Kiran Challa c8cabde1f1 Improve logging - individual filters 2017-12-18 13:16:06 -08:00
Kiran Challa 4c4a7b3c6c Improve logging - filter pipeline execution
Related to issue #6498: When enabling "Trace" logging for MVC loggers, I should be buried in log messages
2017-12-14 11:22:13 -08:00
Kiran Challa 7e26af908e [Fixes #6514] Add default ctor overload to AuthorizeFilter 2017-12-12 14:07:02 -08:00
Kiran Challa 821daa5ad0 [Fixes #7085] ApplicationModelConventionExtensions should make a copy of collections when iterating them 2017-12-12 14:03:35 -08:00
Nate McMaster 67f48064ce Skip additional flaky tests. See aspnet/Mvc#7122 2017-12-11 15:38:30 -08:00
Nate McMaster 2789507808 Disable flaky test ProcessAsync_WorksForNestedCacheTagHelpers 2017-12-11 11:49:13 -08:00
N. Taylor Mullen 7cea779b7a Update JsonHelper to escape HTML.
- This functionality can be disabled by setting the `Switch.Microsoft.AspNetCore.Mvc.AllowJsonHtml` switch in an app.config.
- Updated tests to react to this new behavior.
- Exposed a new `PublicSerializerSettings` property on `JsonOutputFormatter` so we can accurately copy settings from the used output formatter in `JsonHelper`.
2017-12-07 16:12:43 -08:00
Kiran Challa d5bb73a98c [Fixes #6197] AddXmlSerializerFormatters with no namespace 2017-12-07 04:39:34 -08:00
Kiran Challa 05d02e7cab [Fixes #6533] Log when XML formatters fail to create a serializer 2017-12-06 11:52:05 -08:00
Kiran Challa db38da7edb Fix Xml formatters to taking in MvcOptions to take affect of options mutation
Related to issue [Fixes #6858] Changes to MvcOption's settings (SuppressInputFormatterBuffering & AllowBindingUndefinedValueToEnumType) are not taking affect
2017-12-06 11:44:35 -08:00
Kiran Challa e09ea40551 [Fixes #6591] TempData should support nullable types 2017-12-04 15:33:22 -08:00
Kiran Challa 629f87181a [Fixes #6858] Changes to MvcOption's settings (SuppressInputFormatterBuffering & AllowBindingUndefinedValueToEnumType) are not taking affect 2017-12-04 14:25:41 -08:00
Jass Bagga 0bb3f18049
Add support for BadRequest in RazorPages (#7097)
Addresses #7095
2017-12-01 12:03:24 -08:00
Doug Bunting 6b2a702ff4 Handle line ending differences in a few tests
- #6205
- combine `TagHelpers_SupportsPathNavigation()` and `TagHelpers_SupportsRelativeNavigation()` into one

nit: remove a few unnecessary `.Trim()` calls
2017-11-30 21:18:42 -08:00
Pranav K e6c716444d Add a <partial /> tag helper
Fixes #5916
2017-11-30 17:08:47 -08:00
Jeremy Skinner 711a618310 Adds test for proposal in #7014 2017-11-22 07:50:37 -08:00
avertes ee5535203e Fixed rfc3339 formats to work with all localizations (#7066)
* Amend rfc3339 formats to work with all localizations
Changed time separator ":" to "\:" to prevent it from being substituted with a localized separtor. For example in it-IT locale, datetime-local was formatted as 2017-11-19T22.52.29.223 instead of correct format 2017-11-19T22:52:29.223
2017-11-21 15:10:18 -08:00
Pranav K 9dc9381ae4 Re-order execution in CacheTagHelper to avoid setting the result too early
Re-enable skipped tests
Fixes #7042
2017-11-20 10:03:47 -08:00
Jass Bagga 5fffd464cd
Support input type "week" (#7045) 2017-11-16 16:00:15 -08:00
Pranav K b6144142fe Update samples and tests to target netcoreapp2.1 2017-11-13 14:58:40 -08:00
Pranav K a01e23250f Preparing to update to 2.2 SDK 2017-11-09 16:25:51 -08:00
Jass Bagga bb07119b4a
Handle "month" input type (#7022)
Addresses #6615
2017-11-09 10:25:36 -08:00
Chris Ross (ASP.NET) bcaee8df4e Disable broken Anti-forgery tests 2017-11-09 09:46:59 -08:00
Chris Ross (ASP.NET) a7c9e8ab25 Test: Do not set response headers after the response has started 2017-11-09 08:57:20 -08:00
Steve Sanderson d9825d1547 Better JSON deserialization errors. Implements #4607, #4862 2017-11-06 23:02:13 +00:00
Pranav K ab4c519dd5 Infer multipart/form-data for FromFile parameters 2017-11-02 09:36:31 -07:00
Nate McMaster 2e4bc548f5
Pin tool and package versions to make builds more repeatable (#7013) 2017-10-31 19:18:14 -07:00
Ryan Nowak 861d78fb78
Refactor content negotiation code into a service (#6998)
* Refactor content negotiation code into a service

This is a refactor in anticipation of using this logic in some other
places
2017-10-31 16:32:37 -07:00
Pranav K 41efa409a4 Remove TestOptionsManager 2017-10-30 17:49:15 -07:00
Pranav K de2aef61ba Make controllers with ApiControllerAttribute visible in ApiExplorer 2017-10-27 12:04:12 -07:00
Javier Calvarro Nelson 0989e60f73 [Fixes #6943] Unit Testing Page Model Throws Null Ref On ModelState check 2017-10-26 14:37:42 -07:00
Justin Kotalik ce66e95304 React to JsonPatch exception message changes. (#6976) 2017-10-20 09:56:27 -07:00
Pranav K 8946a68923 Infer binding sources for ApiController parameters
Fixes #6847
2017-10-16 15:20:43 -07:00
Jass Bagga b992ef0ced Add tests to ApplicationModelTest (#6932)
Addresses #756
2017-10-10 11:24:03 -07:00
Ryan Nowak 7ba167fcd8 Add 'default response' to API Response Type
Also some cleanup and unit tests.
2017-10-09 19:48:52 -07:00
Nate McMaster 3bfb023679 Update how PackageReference versions are set
Changes:
 - Remove floating versions
 - Disable myget feeds during a Universe build
 - Use package-specific MSBuild variables. Pattern = `packageId.Pascalize() + "PackageVersion"`, with a few exceptions.
2017-10-09 11:11:24 -07:00
Nate McMaster 3f02482617 Minor test code changes to resolve xUnit2013 build error 2017-10-05 16:04:20 -07:00
Sébastien Ros c4400d22d4 Port fix for URL helper redirect (#6916)
Fixes #6910
2017-10-05 11:24:36 -07:00
Sébastien Ros d0a8b5f78f Port fix for URL helper redirect (#6917)
Fixes #6910
2017-10-05 11:24:18 -07:00
Mike Harder 9fbb2f1141 Simplify collection initialization (#6897)
- Addresses VS message "IDE0028 Collection initialization can be simplified"
2017-10-04 14:12:43 -07:00
Pranav K 950db6587c Require attribute routing with [ApiController]
Fixes #6870
2017-10-04 13:13:20 -07:00
Kristian Hellang bfbc04f758 Use AddHttpContextAccessor method added in aspnet/HttpAbstractions#947 2017-10-03 08:52:59 -07:00
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
Steve Sanderson afdda7cbee Update fsproj for FSharpWebSite. Fixes #6554 2017-10-02 14:35:28 +01:00
Jass Bagga 2fcfc6be7c Add EnableRangeProcessing (#6895)
Addresses #6780
2017-09-29 18:39:45 -07:00
Nate McMaster fb142f0b24 Import dependencies.props last to ensure TargetFramework is set first 2017-09-29 17:02:30 -07:00
Jass Bagga bd8b4d86df Port fix for #6875: Only set Content-Length when serving body (#6888)
Addresses #6887
2017-09-25 16:01:15 -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
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
Kiran Challa a96fb68690 Fixed FileExtensionsAttributeAdapter to trim(whitespaces, dot character) and lowercase the extensions 2017-09-21 14:52:24 -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
Hao Kung 95c10050c9 Stop using obsolete version of AddScheme in test 2017-09-20 12:48:46 -07:00
Javier Calvarro Nelson 85f3c841f1 Revert "Revert "Improvements to the testing package.""
This reverts commit 7b28334c41.
2017-09-19 21:45:05 -07:00
Ryan Brandenburg 7b28334c41 Revert "Improvements to the testing package."
This reverts commit 96bd2769d0.
2017-09-19 18:02:53 -07:00
Pranav K 127d23a022 Parse LanguageVersion correctly
Fixes https://github.com/aspnet/Mvc/issues/6611
2017-09-19 13:38:40 -07:00
Pranav K f0a5af2ba7 Revisit the unwrapping code in ControllerActionInvoker
Fixes #6679
2017-09-19 09:49:37 -07:00
Javier Calvarro Nelson 96bd2769d0 Improvements to the testing package.
* Detect a ConfigureDefaultBuilder static method on Program.cs of the test site
and use it to initialize the IWebHostBuilder instance that we configure for testing.
* Make use of the new service configuration extensibility points in Hosting to override
services for testing.
* Get rid of MvcWebApplicationBuilder and move MVC specific methods into extension methods.
2017-09-18 18:12:01 -07:00
Kiran Challa 72eb546329 Added attribute adapter for DataAnnotation's FileExtensionsAttribute 2017-09-18 16:20:26 -07:00
Doug Bunting fd9cb08790 Add Switch.Microsoft.AspNetCore.Mvc.UseDateTimeTypeForDateTimeOffset quirks mode
- patch recipients can use switch to undo the #6648 fix
2017-09-18 15:13:43 -07:00
Doug Bunting 6041c6b966 Auto-select `type="text"` for `DateTimeOffset` values
- cherry-picked from 7e4a8fe in dev
- #6648
- a different take on #4871
- `DateTime` can also round-trip `DateTimeKind.UTC` with `[DataType("datetimeoffset")]` or `[UIHint("datetimeoffset")]`
- since they're now handled differently by default, add more `DateTime` tests
- expand tests involving `Html5DateRenderingMode.CurrentCulture`

nits: make VS-suggested changes to files updated in this PR
2017-09-18 15:13:33 -07:00
Pranav K 9f5e4eb483 Allow "page" route parameter to be used in Mvc controllers
Fixes #6660
2017-09-18 15:02:13 -07:00
Kiran Challa 47287c508e Added new extension methods to configure all MVC localization services
[Fixes #5436] Must call `AddViewLocalization()` to use `IStringLocalizer<T>` in an application
2017-09-18 14:28:55 -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 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
Jass Bagga b3aa691549 Add EnableRangeProcessingSwitch for FileContentResult and Fil… (#6839)
Addresses #6792
2017-09-18 10:57:49 -07:00
Pranav K c13cef6a74 Injecting IViewLocalizer into Razor Page causing IndexOutOfRangeException
Fixes #6694
2017-09-15 15:58:32 -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
Pranav K 037c1ec47d Make @inherit + Razor Pages + _ViewImports work
Fixes #6769
2017-09-14 12:34:00 -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
Charlie Daly 9db92dc6a7 JsonResultExecuter logs type of result.
- MvcJsonLoggerExtensions.JsonResultExecuting logs result type instead of value
- Nulls handled more elegantly.
- Two tests added to JsonResultExecutorTests.cs.
- #4604
2017-09-13 23:39:00 -07:00
Nick Chapsas db397d812b TagHelperOutput extension methods for class value manipulation (#6565)
* Added TagHelperOutput extension methods for class value manipulation
2017-09-13 11:58:10 -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
Pranav K 63397653fa Make DefaultApiDescriptionProvider understand ActionResult<T>
Fixes #6784
2017-09-11 14:20:38 -07:00
Pranav K 6bf165f22f Update default Razor search paths to include ~/[PagesRoot]/Shared
Fixes #6604
2017-09-11 14:11:39 -07:00
Kiran Challa 3beb310866 Avoid saving TempData in case of unhandled exceptions. [Fixes #6598] BUG? Accessing TempData prevent response to have content on error. 2017-09-07 13:13:27 -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
Pranav K bac68ba3c2 Injecting IViewLocalizer into Razor Page causing IndexOutOfRangeException
Fixes #6694
2017-09-06 13:54:38 -07:00
Doug Bunting 7e4a8fe479 Auto-select `type="text"` for `DateTimeOffset` values
- #6648
- a different take on #4871
- `DateTime` can also round-trip `DateTimeKind.UTC` with `[DataType("datetimeoffset")]` or `[UIHint("datetimeoffset")]`
- since they're now handled differently by default, add more `DateTime` tests
- expand tests involving `Html5DateRenderingMode.CurrentCulture`

nits: make VS-suggested changes to files updated in this PR
2017-09-05 16:05:13 -07:00
Doug Bunting 8645ada6b5 Remove no-op behaviour for no-content `<label></label>` elements
- #6638
2017-08-31 09:21:44 -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 b82200851f Do not re-discover runtime compiled RazorPage files for precompiled Razor Pages.
Fixes #6718
2017-08-29 16:15:07 -07:00
Kiran Challa b2f9ad1b67 Changed CookieTempDataProvider's CookieSecurePolicy from SameAsRequest to None 2017-08-29 14:55:52 -07:00
Kiran Challa cfc05104e4 Updated to use WebEncoders utility's Base64Url encode/decode functionality 2017-08-29 08:37:28 -07:00
Ryan Nowak ca6c76c358 Add a test where [Ignore..] gets overridden
Fixing a small gap in our AF functional tests.
2017-08-25 13:55:27 -07:00
Pranav K 7b2a4ff465 Allow "page" route parameter to be used in Mvc controllers
Fixes #6660
2017-08-24 15:44:37 -07:00
Pranav K 900a5c7c4c Add support for ResponseCache in Razor Pages
Fixes #6437
2017-08-18 16:25:40 -07:00
Pranav K 3e8da43279 Pinning versions for 2.0.0 2017-08-17 15:00:47 -07:00
Nate McMaster 3a710c3d64 Upgrade to xunit 2.3.0-beta4 2017-08-17 10:45:03 -07:00
Nate McMaster b43b244830 Use Directory.Build.props/targets 2017-08-16 12:30:13 -07:00
Pranav K 5fee1cac83 Merge pull request #6655 from aspnet/rel/2.0.0
Refactor CORS support out of MVC Core
2017-08-14 16:50:14 -07:00
Javier Calvarro Nelson f2a8c1cea7 Refactor CORS support out of MVC Core 2017-08-14 11:40:56 -07:00
Pranav K eb5c23ea8e Parse LanguageVersion correctly
Fixes https://github.com/aspnet/Razor/issues/1591
2017-08-08 17:25:28 -07:00
Pranav K 8ab361ae42 Merge pull request #6582 from aspnet/rel/2.0.0
Add global filters with the right scope
2017-07-21 14:02:29 -07:00
Pranav K 2ef26486dd Add global filters with the right scope
Previously global filters were added to the page application model with Action scope. This
would have resulted in incorrect ordering of filters during execution. We'll instead add
global filters separately with the right scope. #6579 will be used to express global filters
as part of the application model.
2017-07-21 14:02:07 -07:00
Pranav K 6eba0e2128 Merge pull request #6578 from aspnet/rel/2.0.0
Rel/2.0.0
2017-07-21 10:51:10 -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
Pranav K b879557af5 Increase wait timeouts for flaky tests (#6548) (#6556)
* Increase wait timeouts for flaky tests

Fixes #6540
2017-07-17 16:40:37 -07:00
Pranav K 81fa9c8fcf Increase wait timeouts for flaky tests (#6548)
* Increase wait timeouts for flaky tests

Fixes #6540
2017-07-17 16:40:06 -07:00
Pranav K 1810925b13 Add _ViewStart and _ViewImports to embedded view test 2017-07-14 10:34:29 -07:00
Pranav K 998547839e Ensure IPageApplicationModelProviders are invoked in the sequence of their Order
Fixes #6536
2017-07-14 10:11:53 -07:00
Javier Calvarro Nelson 3d76fdf086 Private cache for cache tag helper and distributed cache tag helper 2017-07-10 15:00:19 -07:00
John Luo 492f820cf7 Missed caching API updates 2017-07-07 22:06:20 -07:00
John Luo 9ebece44e0 Reacting to caching API updates 2017-07-07 21:22:49 -07:00
Jass Bagga b4fe715c71 Revert breaking change (#6519)
Addresses #6518
2017-07-07 17:09:36 -07:00
Ryan Brandenburg 9e2f8b7cb5 Comment on remaining PackageTargetFallbacks 2017-07-07 15:01:07 -07:00
Javier Calvarro Nelson e1c1682065 Testing infrastructure cleanup 2017-07-07 13:18:42 -07:00
Ryan Nowak f80f7cefa5 Fix #6480
This change logs when we encounter and exception reading temp data from a
cookie and swallows the exception. Additionally, we clear the cookie so
that this won't happen on subsequent requests.

This will handle cases where data protection is misconfigured, or a
request just has general garbage in the cookies.
2017-07-07 13:14:03 -07:00
Hao Kung e09a0f5b7c React to auth default changes 2017-07-07 12:08:11 -07:00
Pranav K f1c4aa14d3 Simplify CacheTagHelper.ProcessAsync (#6506)
* Simplify CacheTagHelper.ProcessAsync

Modify ProcessAsync to cause all tasks to fail when the ongoing GetChildContentAsync call that they're
awaiting on fails.
2017-07-07 11:15:19 -07:00
Pranav K fc106ab793 Revive call to FormattingUtilities in XmlDataContractSerializerOutputFormatter
Fixes #6235
2017-07-07 10:11:28 -07:00
Ajay Bhargav Baaskaran 05f5d59e44 Fix build break 2017-07-06 19:43:42 -07:00
Pranav K 288da1a405 RedirectToPage(page, handler) does not work (#6503)
Fixes #6436
2017-07-06 14:12:57 -07:00
Hao Kung a15c2afe85 React to auth 2017-07-06 13:42:05 -07:00
Chris R b9541be20d React to ISession cancellation changes 2017-07-05 14:34:48 -07:00
Pranav K 8963b83dd3 Remove ParseOptions and CompilationOptions from RazorViewEngineOptions (#6487)
* Remove ParseOptions and CompilationOptions from RazorViewEngineOptions

Fixes #6009
2017-07-05 14:18:49 -07:00
Nate McMaster 1eb7f9e032 Add CookieBuilder to CookieTempDataProviderOptions and obsolete duplicate API (#6472) 2017-07-05 10:19:13 -07:00
Ryan Nowak 8d9c16132a Fix #6479 - remove IFileProvider constructor
The RazorProject implementation used by MVC at runtime has a constructor
that takes an IFileProvider (used by tests). This causes ambiguities
when a user registers an IFileProvider in DI.

Cleaning up tests to use a mock instead of the file provider directly
2017-07-04 13:48:56 -07:00
Ryan Nowak a23307e2b1 Check for properties that can't befound
If you give ModelExpressionProvider a lambda with a private property
you'll end up here. This wasn't common before, but it seems like users
are more likely to try it with pages.

Model Metadata and Model Binding don't handle private properties, so
supporting it in Model Expressions seems less than useful.

This isn't a breaking change because this case would have resulted in a
null-ref. Addresses #6400
2017-07-04 13:26:17 -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
Javier Calvarro Nelson c50f55d1de Add a default sliding expiration of 30 seconds on Memory and Distributed Cache Tag Helpers. 2017-07-03 17:06:47 -07:00
Sébastien Ros 13e76c24d3 Dispose CancellationTokenSource created in CacheTagHelper (#6293)
Fixes #5649
2017-07-03 14:59:48 -07:00
Javier Calvarro Nelson 728b96344d [Fixes #6274] Fix and re-enable skiped test 2017-07-03 13:00:38 -07:00
Hao Kung eeee3ef731 Add SignOut overload + Use new auth api (#6476) 2017-07-03 12:32:11 -07:00
Javier Calvarro Nelson d917504c14 [Fixes #6468] Clean up the productionized testing infrastructure 2017-07-03 10:15:06 -07:00
Pranav K 7c5a16c105 Add RemoveType methods of PageConventionCollection 2017-06-30 16:27:51 -07:00
Henk Mollema 948982ebff Create custom collection for model binder providers
Fixes #6161
2017-06-30 15:44:07 -07:00
Pranav K bc86ea4e47 Move convention extensions from RazorPagesOptions to PageConventionCollectionsExtensions
Fixes #6462
2017-06-30 14:25:10 -07:00
Doug Bunting f76a390a4e Fall back to linear search for prefix matches
- #6469
2017-06-30 10:59:07 -07:00
Doug Bunting 293ac81fe1 Use ordinal comparisons in `ExpressionTextCache`
- #6349
- C# field and property names are case-sensitive
  - it's not important (where this cache is used) that HTML field names are case-insenstive
2017-06-29 14:59:06 -07:00
Jass Bagga 17f6b17a6d Add RequestSizeLimitAttribute (#6453)
Addresses #6352
2017-06-29 13:04:27 -07:00
Ryan Nowak 579aca0121 Define semantics for pagemodels
Fixes #6210

Now a pagemodel requires a [PageModel] somewhere in it's hierarchy. We
don't do a guess at whether or not your model class is a PageModel.
2017-06-29 09:24:57 -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
Pranav K 8df3032540 Add support for specifying filters on page models.
Fixes #6334
2017-06-28 14:43:02 -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
Nate McMaster 12ea28af5c React to API change in HttpAbstractions 2017-06-27 17:33:46 -07:00
Pranav K 9acfc8d221 Watch _ViewImports outside the pages root for changes
Fixes #6428
2017-06-27 09:30:07 -07:00
Pranav K d1813a7cd7 Normalize paths returned by view location expanders
Fixes #6448
2017-06-27 08:48: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
Hao Kung cf09af52eb Remove duplicate type 2017-06-26 16:32:51 -07:00
Hao Kung 4e004c22ba React to options 2017-06-26 15:49:23 -07:00
Jass Bagga f4a86f5511 Add DiagnosticSource to RazorView (#6386)
Addresses #6222
2017-06-26 15:35:31 -07:00
Pranav K e5da44a82f Generate full pdbs for views on desktop and re-enable runtime error tests (#6442)
* Generate full pdbs for views on desktop and re-enable runtime error tests

StackTraceHelper \ PortablePdbReader used by Diagnostics is only useful for
reading portable pdbs on disk. However pdbs produced by views are entirely
in memory and therefore cannot be read. Consequently
we choose to generate full pdbs for views on Windows (when possible).
2017-06-26 10:46:12 -07:00
Javier Calvarro Nelson 052db40567 Fix documentation and target files issues 2017-06-23 19:09:45 -07:00
Javier Calvarro Nelson 35152d5933 [Fixes #6233] Productionize and harden our functional testing infrastructure 2017-06-23 18:12:41 -07:00
Pranav K aa5a348385 _ViewStart.cshtml not picked up when added to the root of the app
Fixes #6308
2017-06-23 08:25:58 -07:00
Pranav K 0dfffd45c2 RazorPages page directives missing quotes should alert user
Fixes #5868
2017-06-22 15:13:38 -07:00
Jass Bagga 9d138affa2 Suppress JsonPatchDocument validation (#6429)
Addresses aspnet/JsonPatch#80
2017-06-22 14:14:11 -07:00
N. Taylor Mullen 53fb676069 React to new page directive expectations.
- This will be reverted once https://github.com/aspnet/Razor/issues/1448 has been completed.
2017-06-20 12:53:23 -07:00
Pranav K c89f0a1e43 Allow AddPageRoute to route to pages root. (#6412)
* Allow AddPageRoute to route to pages root.
Fixes #6338
2017-06-20 12:33:33 -07:00
Kiran Challa 3fc3d8d060 Merge branch 'rel/2.0.0-preview2' into dev-gate 2017-06-15 03:48:49 -07:00
Kiran Challa 0c6460ab64 Changed WebApiCompatShim projects to use PackageTargetFallback 2017-06-14 16:08:04 -07:00
Ryan Brandenburg 8832014516 PackageTarget->AssetTarget 2017-06-14 15:03:43 -07:00
Ryan Nowak dfe04bc917 Fix #5979 - Remove hardcoding of tempdata for pages 2017-06-12 15:05:36 -07:00
Pranav K 6961cf9211 Cleanup unused precompilation code 2017-06-09 16:45:43 -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
Pranav K 8662422e18 Merge pull request #6376 from aspnet/rel/2.0.0-preview2
Perform case insensitive lookups for precompiled views
2017-06-07 15:19:42 -07:00
Pranav K 1124eb5016 Perform case insensitive lookups for precompiled views 2017-06-07 15:19:21 -07:00
Pranav K 8f883e8e13 Use RazorViewAttribute \ RazorPageAttribute for view discovery 2017-06-07 13:49:24 -07:00
Pavel Krymets 4bf20035e4 Merge remote-tracking branch 'origin/rel/2.0.0-preview2' into dev 2017-06-07 13:48:27 -07:00
Pavel Krymets 2845e9b7d4 Add configuration package reference because Logging dropped it (#6375) 2017-06-07 13:47:39 -07:00
Nate McMaster 945661ad0e Remove unused test sample project (#6368) 2017-06-06 15:56:31 -07:00
N. Taylor Mullen e51d3c262c Merge branch 'rel/2.0.0-preview2' into dev 2017-06-06 13:13:11 -07:00
N. Taylor Mullen 3448b6a74e Re-enable net461 functional tests.
aspnet/Coherence-Signed#540
2017-06-06 13:10:29 -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
Pranav K 628dfc39c1 Remove model type from RazorPageAttribute 2017-06-05 16:07:14 -07:00
Pranav K 20c04d099e Update to use Razor parser to parse page directive 2017-06-05 14:02:24 -07:00
Ryan Nowak b796bc0f39 Add Page filters 2017-06-05 08:05:49 -07:00
Hao Kung 06ca0d1e9c Merge branch 'rel/2.0.0-preview2' into dev 2017-06-02 12:29:33 -07:00
Hao Kung dbd340a5e0 Fix test 2017-06-02 12:28:56 -07:00
Kiran Challa 03e696a05e Merge branch 'rel/2.0.0-preview2' into dev 2017-06-01 15:19:13 -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 597a0c9a11 Add support for friendly routes in pages
FIxes #6325
2017-05-26 14:29:00 -07:00
Ryan Nowak 688e518991 Add result filters to pages 2017-05-26 12:33:46 -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
Ryan Nowak b7db6dbc8e Remove pass-through activator for pages
This change removes a 'pass through' IRazorPageActivator that we were
using to avoid the default one initializing the Page twice.

The fix is to add an adapter so that the IRazorPage that the RazorView has
isn't the *real* page, it's the adapter. The adapter doesn't have anything
interesting to activate :).
2017-05-26 12:29:10 -07:00
Ryan Nowak c3f7613725 Make RazorReferenceManage public
Fix for #4938. This change makes the reference manager public and
documented so that it can be replaced.
2017-05-26 10:58:45 -07:00
Ryan Nowak ad6b029443 Temporarily disable MVC functional tests on net461 2017-05-25 21:10:01 -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
Pranav K 452578e4a8 Revisit the architecture of CompilerCache
Fixes #5912
2017-05-25 08:54:15 -07:00
Ryan Nowak c1dd95be2a Add a test for #6294
This case was fixed by 2992f8e - this commit just adds a test to verify
the fix.
2017-05-24 16:53:30 -07:00
Ryan Nowak 2992f8e38a Separate PageContext and ViewContext
This change decouples PageContext and ViewContext completely.
2017-05-24 16:01:52 -07:00
Ryan Nowak a6d97d35e3 Add back support for AddTagHelpersAsServices
This doesn't go through the Razor tag helper discovery pipeline because
this can really only ever work for ITagHelper based taghelpers. So
there's really no point in reusing that logic, which would be hard
anyway.
2017-05-23 14:04:42 -07:00
Chris R 53c56f558b React to StringSegment changes 2017-05-23 14:01:44 -07:00
Kiran Challa 3c7a2dc847 Revert "Temporarily skipping error page middleware test"
This reverts commit d916cfeadd.
2017-05-23 13:23:52 -07:00
Jass Bagga e681c23d5c Add ITagHelperComponentManager (#6302)
Addresses #6282
2017-05-23 13:22:15 -07:00
Kiran Challa 04f74edd85 Revert "Disable building and testing FSharpWebSite to unblock the mirror when using latest CLI"
This reverts commit b28002a9e5.
2017-05-23 13:20:36 -07:00
Pranav K 39f1f5c933 Move Pages filter creation to application model provider
Fixes #6198
2017-05-23 11:03:19 -07:00
Ryan Nowak 083f55e337 Delete pranav's test logs :) 2017-05-22 17:38:27 -07:00
Pranav K c5f771d96d Use factory pattern for caching in ControllerActionInvoker 2017-05-22 13:05:55 -07:00
Jass Bagga 9d38e2523c Add methods to TagBuilder (#6287)
Addresses #5689
2017-05-19 12:23:16 -07:00
Jass Bagga 9aff0a67c1 Range support for FileResult(#6150)
Addresses #3702
2017-05-19 10:51:46 -07:00
Ryan Nowak c8614e9aa8 Fix build break due to Razor changes 2017-05-18 10:58:43 -07:00
Jass Bagga 51c142ae91 Modify GetProperties overload (#6276)
Addresses https://github.com/aspnet/Common/issues/219
2017-05-16 13:34:14 -07:00
Ajay Bhargav Baaskaran 5662717983 Add null check in WriteLiteral 2017-05-15 15:08:50 -07:00
Nate McMaster d70bfdd1ea Upgrade test framework versions and fix test issues 2017-05-15 14:11:27 -07:00
Kiran Challa b28002a9e5 Disable building and testing FSharpWebSite to unblock the mirror when using latest CLI 2017-05-13 19:32:51 -07:00
Ryan Nowak cf4742735d Fix Build Break 2017-05-12 20:06:51 -07:00
Ryan Nowak b2d95ffb21 Remove usage of NotFoundProjectItem
We're making this type internal in Razor, using a mock here is fine.

Also renamed some types with a generic name. The actual 'default'
RazorProject class lives in Razor and is internal.
2017-05-12 15:55:36 -07:00
Ryan Nowak 8f52507e9d Fix build break 2017-05-12 15:53:49 -07:00
Kiran Challa d916cfeadd Temporarily skipping error page middleware test 2017-05-12 14:39:19 -07:00
Jass Bagga b758a86a38 Modify ViewComponent_CannotFindComponent error message (#6263) 2017-05-12 14:15:29 -07:00
Ajay Bhargav Baaskaran 5eabae55cb Added PushWriter and PopWriter to RazorPageBase
- Removed WriteXYZTo methods
2017-05-11 15:21:42 -07:00
N. Taylor Mullen 08965550ad Re-enable error page runtime test.
- This was previously broken due to the shared framework not being able to find the file responsible for an exception.

#6120
2017-05-10 14:33:10 -07:00
Pavel Krymets cf64b335f6 Remove unnecessary package references (#6252) 2017-05-10 12:06:10 -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
Steve Sanderson debc3dd433 Functional test to show FSharpAsync works end-to-end (#6240) 2017-05-08 19:30:01 +01:00
John Luo 3164046233 Merge branch 'rel/2.0.0-preview1' into dev 2017-05-05 20:00:12 -07:00
John Luo f0a26a7f08 Migration2 2017-05-05 19:59:45 -07: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
Jass Bagga 87bb1d0ff5 Refactor GenerateCheckBox (#6229)
Addresses #5981 and #5983
2017-05-05 11:53:53 -07:00
Steve Sanderson a80594d706 Add FSharpWebSite plus simple functional test against it (#6231) 2017-05-05 19:08:36 +01: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
Sébastien Ros 525a479660 Fixing ExcludeBindingMetadataProvider unit test (#6113)
Fixes #6110
2017-04-27 11:42:06 -07:00
N. Taylor Mullen 8bece90c83 Fix asp-page-handler to generate form tags correctly.
- Prior to this change using asp-page-handler on its own did not create correct `<form>` elements. There were multiple issues, one as that the `FormTagHelper` would purposefully drop into a no-op code path. Second is the `DefaultHtmlGenerator` didn't call through to the `UrlHelper` correctly.
- Added functional test cases to validate asp-page-handler can live on its own on a form tag. This also included adding a variant where method="post".
- Added a `FormTagHelper` unit test to validate the `PageHandler` property is consumed properly.

#6208
2017-04-27 10:32:04 -07:00
Ryan Nowak b1b3a816cc Rename View() to Page()
This requires us to introduce another base class between RazorPageBase and
Page - you need this because you aren't allow to have Page.Page().
2017-04-27 09:27:14 -07:00
N. Taylor Mullen f165914b40 Update how `FormTagHelper` handles `get` method attributes.
- Added functional test to verify `asp-*` attributes on form taghelpers work as expected.
- Added a unit test to validate `FormTagHelper` behaves as expected.
- Moved `Method == "get"` checks into appropriate code paths. These include the one where a user specifies an empty or non-existent `action` attribute and where a user doesn't utilize any `asp-*` attributes. In the later, we default `Method` to `"get"` if it's not provided.

#6006
2017-04-25 15:17:15 -07:00
Pranav K ce4e94c1ac Use Bundled NETStandard.Library \ NETCoreApp versions instead of explicitly specifying one 2017-04-25 12:50:48 -07:00
Ryan Brandenburg 42b988ad88 ./ paths relative on page. 2017-04-25 11:57:58 -07:00
Pranav K 649ee4d28d Add support for page handler to URL generating APIs. 2017-04-24 22:56:58 -07:00
N. Taylor Mullen ef0333ac6a Add Antiforgery to the FormTagHelper pre-check for processing.
- Added a test case to the HtmlGeneration functional test (the one verifying complex FormTagHelpers).
- Added unit test verifying antiforgery behavior when it's the only provided parameter.

#6006
2017-04-24 21:46:54 -07:00
N. Taylor Mullen 5c8a161ace Change `FormTagHelper` to apply to all form tags.
- Added functional test to validate that non-attributed form tags have an antiforgery input generated. Re-generated baseline to reflect changes.
- Added a unit test to validate that parameterless `FormTagHelper`s behave as expected.

#6006
2017-04-24 18:39:01 -07:00
Pranav K ccdaa5a729 Make /Pages the default root for pages.
Fixes #6184
2017-04-24 15:46:32 -07:00
Ryan Nowak 04fd762943 Rename form-action -> handler 2017-04-24 14:15:35 -07:00
Doug Bunting cacee2a837 Break fix: Undo part of 141b637
- affected test using a test factory for `HttpResponseStreamWriter`s
2017-04-23 21:48:42 -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
Kiran Challa 68866f8716 Added functional tests for JsonPatch 2017-04-23 09:09:08 -07:00