Commit Graph

2840 Commits

Author SHA1 Message Date
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 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
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
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
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
Adrian Wright 1d1a5203db Fix spelling mistakes in xml comments (#6755) 2017-09-05 12:52: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
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
Manoj Kulkarni 87027de89c Fixed minor typo 2017-08-30 14:57:27 -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
Alex 4917e69ad6 Fixed spelling mistake 2017-08-27 22:27:21 -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
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 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 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 e65e647867 Add empty baselines to suppress api check 2017-07-19 13:18:09 -07:00
Pranav K 843d9820e2 Add breakingchanges.netcore.json for Microsoft.AspNetCore.Mvc.Razor 2017-07-18 09:23:53 -07:00
Ryan Nowak c9f506d4ea Fix #6542 - correct namespace of [TempData] 2017-07-14 10:49:15 -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 c43da19ff1 Do not add the configuration for CacheTagHelperOptions to the container multiple times 2017-07-10 19:10:04 -07:00
Javier Calvarro Nelson 0c07e1e725 [Fixes #6522] Commit cache entries only when the content gets successfully generated 2017-07-10 18:18:32 -07:00
Javier Calvarro Nelson ca08b0e06b Add breakingchanges.json for tag helpers 2017-07-10 15:52:33 -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
Javier Calvarro Nelson 9f60b42476 Change version suffix for Testing package 2017-07-10 10:24:07 -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
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
Ajay Bhargav Baaskaran 8bc4d7bb2d Rect to Razor rename 2017-07-06 18:45:34 -07:00
Pranav K 0c31f51d28 Update version suffix for 2.0.0 RTM release 2017-07-06 15:16:05 -07:00
N. Taylor Mullen 1be796027e React to `ParseOnlyLeadingDirectives` rename.
aspnet/Razor#1510
2017-07-06 14:26:35 -07:00
N. Taylor Mullen d71fb890ee React to `IRazorParserOptionsFeature` rename.
aspnet/Razor#1510
2017-07-06 14:20:56 -07:00
Pranav K 288da1a405 RedirectToPage(page, handler) does not work (#6503)
Fixes #6436
2017-07-06 14:12:57 -07:00
N. Taylor Mullen 7454c53047 Rely on Razors MalformedDirective identification for @page.
aspnet/Razor#1448
2017-07-05 16:57:57 -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
Javier Calvarro Nelson ef43b100a6 Fix a null reference exception and add some null checks 2017-07-04 14:24:40 -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
Ryan Brandenburg 057a853de7 DiagnosticSource to 4.4.1 2017-07-03 15:03:34 -07:00
Sébastien Ros 13e76c24d3 Dispose CancellationTokenSource created in CacheTagHelper (#6293)
Fixes #5649
2017-07-03 14:59:48 -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
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
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
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 3536cf5aad Fix #5183 - update docs of CreateWriter 2017-06-26 18:59:36 -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
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 03e555a24e Fix packing issue 2017-06-23 19:43:04 -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
Ryan Nowak de64c84610 React to RazorIRNode renames 2017-06-21 13:44:58 -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
Pranav K f824704741 Cleanup fileLength use 2017-06-18 11:05:49 -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
N. Taylor Mullen 080836e1c5 React to FileName => FilePath renames in Razor.
aspnet/Razor#1423
2017-06-13 11:39:38 -07:00
Ryan Nowak dfe04bc917 Fix #5979 - Remove hardcoding of tempdata for pages 2017-06-12 15:05:36 -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 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
N. Taylor Mullen 6c69cb8f36 Make SHA256 algorithm creation FIPS compliant.
#6354
2017-06-08 10:20:36 -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
Eilon Lipton 32e21e2a5c Merge pull request #6363 from JamesNK/patch-1
Return a shared contract resolver
2017-06-07 14:37:18 -07:00
Pranav K 8f883e8e13 Use RazorViewAttribute \ RazorPageAttribute for view discovery 2017-06-07 13:49:24 -07:00
Nate McMaster e9362360c6 Remove unused dependency and update corefx version 2017-06-06 17:12:47 -07:00
Ajay Bhargav Baaskaran fa2d162ac1 React to razor 2017-06-06 16:43:28 -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
James Newton-King 07e975a0ed Return a shared contract resolver
Return a shared contract resolver from CreateSerializerSettings for performance
2017-06-06 17:52:18 +12: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
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
John Luo 3a4cae72bd Use Strict SameSite mode for temp data cookies 2017-05-30 21:04:32 -07:00
Pranav K 3089bf74fe Remove reference to Microsoft.Extensions.PlatformAbstractions 2017-05-27 17:22:05 -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
Doug Bunting 9f4ff22c4a React to breaking change latest API Check detects
- see PR aspnet/BuildTools#259 and issue aspnet/BuildTools#146
- relates to 014a786b45
2017-05-26 09:53:46 -07:00
Hao Kung 4c2d727e38 React to Auth + switch to Policy Evaluator 2017-05-25 18:23:41 -07:00
Pranav K bb5eb96625 Load the precompilation type from the loaded assembly 2017-05-25 15:00:12 -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 2992f8e38a Separate PageContext and ViewContext
This change decouples PageContext and ViewContext completely.
2017-05-24 16:01:52 -07:00
Ryan Nowak 6094c6ff52 Remove use of AssemblyLoadContext
This will be needed for the switch back to net46.
2017-05-24 11:05:58 -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
Jass Bagga e681c23d5c Add ITagHelperComponentManager (#6302)
Addresses #6282
2017-05-23 13:22:15 -07:00
Pranav K 39f1f5c933 Move Pages filter creation to application model provider
Fixes #6198
2017-05-23 11:03:19 -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
Mardoxx ece5e748ad Minor documentation fix for SerializableError
ModelStateEntry -> ModelStateDictionary
2017-05-18 11:02:23 -07:00
Ryan Nowak 97bbdafde3 React to Razor changes 2017-05-16 14:58:37 -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
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
Ajay Bhargav Baaskaran 5662717983 Add null check in WriteLiteral 2017-05-15 15:08:50 -07:00
Jass Bagga cd6befdef1 Assign unique event Ids in the logger (#6270)
Addresses #6062
2017-05-15 11:52:52 -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
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
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
John Luo d13c9055f0 Merge branch 'rel/2.0.0-preview1' into dev 2017-05-05 19:29:20 -07:00
John Luo a1977cac50 Migration 2017-05-05 19:28:24 -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
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
Pranav K 720a47765d Re-enable baseline check for ViewFeatures\r\nFixes #6186 2017-05-02 11:51:01 -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 490f94d425 Add placeholder `DefineSection` method.
- This enables 2.0.0 code generation to not error.

aspnet/Razor#1254
2017-04-26 15:12:16 -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
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
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 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
Ryan Nowak da5c304f5d Temporarily deativate API Check 2017-04-21 19:42:04 -07:00
Pranav K ca017eced2 Add page to AnchorTagHelper and FormTagHelper
Fixes #6088
2017-04-21 18:12:54 -07:00
Pranav K f568d3c2bc Support finding "sibling" pages when using RedirecToPage
Fixes #6083
2017-04-21 18:12:52 -07:00
Ryan Nowak 297196baa0 Design updates to handler methods and binding
Implements #6091, #6072, #6090, #5927
2017-04-21 17:29:25 -07:00
Ryan Brandenburg 908b4c8d62 FormAction from QueryString 2017-04-21 15:04:37 -07:00
Ajay Bhargav Baaskaran 8eac7c2d6c [Fixes #6117] Added RedirectToPage overloads to Controller 2017-04-21 12:19:35 -07:00
N. Taylor Mullen 83faaebdb6 Upgrade Roslyn dependency to 2.0.0.
- Added C# 7 unit and functional test to validate features work end-to-end.

#6149
2017-04-21 11:41:31 -07:00
Christopher Dresel 025870e8b9 Fix #6159 - Fix deep copy for ControllerModel and ActionModel 2017-04-21 07:41:14 -07:00
Ryan Brandenburg 5a184df808 Remove Binder from Page and PageModel 2017-04-20 17:54:50 -07:00
Hao Kung ea3becb3ca Reenable APICheck 2017-04-20 13:48:26 -07:00
Pranav K 9fe480f735 Add LazyReferenceMetadataFeature 2017-04-20 13:05:50 -07:00
Pranav K 681b798a2e RedirectToPage doesn't trim /Index from URL
Fixes #6080
2017-04-20 11:15:45 -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
Hao Kung 025efe1d6e Fix usings to use Auth 2.0 2017-04-19 15:12:50 -07:00
Ryan Brandenburg c9bfd2296d Parity between Controller and Page/PageModel 2017-04-19 15:02:06 -07:00
Hao Kung 3e8cd1e7c9 MVC => Auth 2.0 2017-04-19 11:57:04 -07:00
Ryan Nowak a8eb5bee70 Implement view search for pages
The View Engine now needs to know about pages :(. This isn't ideal but the
view engine needs to know what set of search paths to use. This was
already hardcoded for controllers vs controllers + areas. It felt right to
further hardcode instead of introduce a wierd abstraction that we only
use.

Additionally pages use a view location expander to implement an ascending
directory search.
2017-04-18 16:11:24 -07:00
Ryan Brandenburg c56b64fc41 Add factory methods 2017-04-17 16:11:34 -07:00
Pranav K 8ed55107e7 Add support for page precompilation 2017-04-17 10:43:50 -07:00
Pranav K 8fa95d66d4 Add support for suppressing inbound and outbound routing 2017-04-14 17:02:45 -07:00
Jass Bagga d8a95c731b Move RazorViewEngineOptionsSetup to internal namespace (#6125)
Addresses #6116
2017-04-13 13:35:35 -07:00
Pranav K c8a1bb6914 React to deps file casing change
Fixes #6122
2017-04-13 13:09:00 -07:00
Pranav K 3474bdf776 RedirectToPage from a form-action handler includes the formaction
Fixes #6104
2017-04-12 09:27:08 -07:00
Ryan Brandenburg 59a3aade9b Fix [TempData] for PageModel's 2017-04-11 16:45:44 -07:00
Jass Bagga 1a8ac88da7 Add PreserveMethod (#6075)
Addresses #5609
2017-04-10 17:31:59 -07:00
N. Taylor Mullen 36e272fdc2 React to Microsoft.AspNetCore.Razor.Evolution => Microsoft.AspNetCore.Razor.Language.
aspnet/Razor#1169
2017-04-10 10:20:19 -07:00
Steve Sanderson 90acd055fe Make [FromBody] treat empty request bodies as invalid (#4750) 2017-04-10 16:55:14 +01:00
Pranav K 1e7972bd8f Add convenience methods for redirecting from a Razor Page back to itself
Fuxes #5953
2017-04-07 10:03:42 -07:00
Ryan Nowak 4032de064e Removing _PageStart.cshtml
Pages now also use _ViewStart.cshtml

Also contains some naming/text cleanup that was missed in the previous
commit.
2017-04-06 08:14:37 -07:00
Ryan Nowak c6e4609096 Getting rid of _PageImports
Pages will just use _ViewImports.
2017-04-06 08:14:37 -07:00
Ryan Brandenburg 9e8d4db7d8 Move TempDataPropertyProvider into filter 2017-04-05 12:04:02 -07:00
Pranav K 925ad75cdf Add convenience methods for redirecting to another Razor Page
Fixes #5956
2017-04-04 14:36:22 -07:00
Pranav K 2d19a82678 Update more resource designer files 2017-04-04 13:54:20 -07:00
Pranav K b18e96717a React to https://github.com/aspnet/Razor/issues/1098 2017-04-03 16:41:55 -07:00
Pranav K d37b1548f8 Update to new resx format 2017-04-03 16:37:22 -07:00
Pranav K 10d2d7c9f6 Remove System.Reflection.TypeExtensions added to workaround test failures
Fixes #6005
2017-04-03 14:47:14 -07:00
Hisham Bin Ateya fe3d45fad1 Adding AllowAnonymousToPage & AllowAnonymousToFolder
Fixes #5884
2017-03-31 20:17:31 -07:00
Steve Sanderson d19150ed22 Fix comment typos in preceding commit 2017-03-31 10:36:53 +01:00
Steve Sanderson 4f351bd37c Add support for media type suffixes (#5273, #6032) 2017-03-31 10:20:43 +01:00
Ryan Brandenburg c47825944d Remove Microsoft.AspNetCore.Mvc.Razor.Host 2017-03-29 16:50:39 -07:00
Jass Bagga 959324b337 Add EditorBrowsable attribute 2017-03-29 16:24:44 -07:00
Jass Bagga eda5028cf4 Add TagHelperComponentTagHelper
Addresses #5728
2017-03-29 11:29:24 -07:00
Kiran Challa c18f0780c1 [Fixes #5413] JsonOutputFormatter adds all closing brackets when exceptions are thrown 2017-03-28 23:09:18 -07:00
Pranav K b22326323a Add properties to Page and PageModel
Fixes #6008
2017-03-28 13:26:38 -07:00
Kiran Challa 9c5b33dd8a Upgraded Json.Net version to 10.0.1 2017-03-28 11:28:43 -07:00
John Luo d21af1f26d React to MemoryCache trigger removal 2017-03-27 12:45:54 -07:00
twirpx 58317b18ce Fixing NRE when CacheTagHelper throws and exception (#5989)
Fixes #5988
2017-03-27 12:45:22 -07:00
Derek Gray 575fe68b2b Order enum values by DisplayAttribute.Order
Fixes #4297
2017-03-27 12:22:35 -07:00
Doug Bunting 6436538068 Rename `IHtmlHelper.TextBox()` parameter (for consistency)
- #5394
2017-03-27 10:24:30 -07:00
Doug Bunting 824d65ca3d Remove `ValueProviderResultExtensions`
- #5063
- update tests that used one extension method to instead use `ModelBindingHelper` directly

nit: `mbc` -> `context`
2017-03-24 22:17:34 -07:00
Jass Bagga cc6f0f6a26 ITagHelperComponent build fix
Fix build

In reaction to aspnet/Razor#1096
2017-03-24 15:23:03 -07:00
Pranav K e7101f248a Support model binding to Razor Pages properties on page and PageModel classes
Fixes #5952
2017-03-24 07:45:19 -07:00
David Fowler d2430f0f4e Merge pull request #6004 from CoskunSunali/dev
Avoid entry point assembly being loaded twice during assembly parts discovery
2017-03-22 22:07:28 -07:00
Pranav K 705c36921a Use alternate workaround for #6005 2017-03-22 19:14:46 -07:00
Pranav K e80abc1950 React to Razor changes 2017-03-22 18:06:18 -07:00
Doug Bunting 1152c468be Disable API Check in projects with untracked breaking changes 2017-03-22 08:34:48 -07:00
Pranav K badb6ce8e5 Remove net451 as a cross-compile target 2017-03-22 06:32:50 -07:00
Coskun Sunali 11d265bddd Avoid entry point assembly being loaded twice during assembly parts discovery.
Addresses https://github.com/aspnet/Mvc/issues/6003
2017-03-22 04:37:06 +03:00