Commit Graph

2440 Commits

Author SHA1 Message Date
Stefan Nikolei 5c79d4e8ee Remove Usage of RazorIrNodeVisitorOfT (#5991) 2017-03-20 14:52:30 -07:00
Ryan Brandenburg 270f66198f Remove Razor from projects 2017-03-17 15:00:39 -07:00
Ajay Bhargav Baaskaran 1fdc5132cb React to TagHelper descriptors api cleanup 2017-03-17 10:51:02 -07:00
Jass Bagga 1197657e5b TempData property attribute
Addresses #5600
2017-03-16 16:34:35 -07:00
Ryan Nowak 8f4ca32f48 Fix #5807 - Race condition in Invoker
This change addressed a race condition in the ObjectMethodExecutor where
the default argument values array can become visible before it is
initialized. If a second observer accesses the array while it is being
initialized, it can observe a null value for a reference type parameter,
leading to a nullref.

The fix here is to make everything immutable and initialize it all up
front. There's no reason to create an OME without eventually running it,
so there's no downside to doing the initialization up front.
2017-03-15 17:19:29 -07:00
Nate McMaster 6f7717a381 Unify dependency versions to one file 2017-03-15 16:54:32 -07:00
Pranav K bee1a55cff Use RazorPagesOptions.RootDirectory when looking for page hierarchies.
Fixes #5915
2017-03-14 18:56:50 -07:00
Pranav K de25357c28 Do not throw if a library does not have a runtime component
Fixes #5690
2017-03-14 15:07:50 -07:00
Ryan Brandenburg 82d87df166 Fix warning as error 2017-03-14 12:44:57 -07:00
Ryan Brandenburg 365ae19c8b Add InvalidTagHelperIndexerAssignment to RazorPageBase 2017-03-14 10:04:15 -07:00
hishamco e44d875df4 Adding AuthorizePage & AuthorizeFolder without requiring a policy
Refactoring
2017-03-13 16:39:52 -07:00
Pranav K f7fd5114b3 Introduce MvcRazorTemplateEngine 2017-03-13 16:33:13 -07:00
Pranav K 4faef7afaf Cache more things in HandlerMethodDescriptor
Add tests for DefaultPageHandlerMethodSelector
2017-03-13 13:15:26 -07:00
Pranav K 7b53ba1f6b Reacting to https://github.com/aspnet/Razor/issues/1063 2017-03-13 09:46:36 -07:00
Ryan Brandenburg 1c74e31715 Add tests for PageActionInvokerProvider (#5882) 2017-03-09 16:19:20 -08:00
Ryan Brandenburg 7f3f6957be Set path in DefaultPageFactory (#5911) 2017-03-09 16:15:43 -08:00
jacalvar 3cd8c8c14d [Fixes #5932] Add constructor taking the BinderType to ModelBinderAttribute 2017-03-09 08:16:00 -08:00
Nick Chapsas 015dafc25f [Feature] String should be an acceptable value for a checkbox if it can be parsed as a boolean (#5845)
- `string` should be an acceptable value for a checkbox if it can be parsed as a `bool`
- `throw` with different resources when `ModelType` isn't `bool` or `string` and when `string` value is not acceptable
2017-03-08 14:22:28 -08:00
Ryan Brandenburg d9d280d1ef Make CookieTempDataProvider the default ITempDataProvider (#5892) 2017-03-07 16:04:47 -08:00
Pranav K 7bca31d079 Add convenience extension methods for IPageApplicationModelConvention 2017-03-06 15:28:44 -08:00
Steve Gordon b6a6b50776 Fixing up an error in the XML Comments (#5888) 2017-03-06 11:07:16 -08:00
Ryan Brandenburg de1d0919e5 Add Http Response Codes to doc comments (#5867) 2017-03-06 10:00:07 -08:00
Pranav K 00c38fca59 Add ModelState to Page 2017-03-03 17:27:39 -08:00
Pranav K 145d27f9b3 Add a PagesOption type that allows configuring the root for Page file discovery
Fixes #5785
2017-03-03 17:20:07 -08:00
Ryan Brandenburg 85e28ae478 Trim quotes from template (#5838) 2017-03-03 09:52:36 -08:00
Pranav K 7cadb58e12 Add convenience extension methods for IPageApplicationModelConvention 2017-03-02 17:38:04 -08:00
Pranav K f6d25f7117 Fix build warning 2017-03-02 17:20:20 -08:00
Ajay Bhargav Baaskaran f7c2e5bffc [Fixes #5844] Using ExtensionIRNode for Inject directive 2017-03-01 09:45:47 -08:00
N. Taylor Mullen acfad83aa6 Migrate to MSBuild
- thanx to @NTaylorMullen for initial conversion
  - e.g. AssemblyInfo.cs files were already minimized or removed :)
- allow `>=` RC3 CLI's to build and run MVC
- work around several dotnet migration issues; see #5482
- disable full .NET Framework runs of functional tests; see #5873
- remove `Microsoft.DotNet.InternalAbstractions` and `System.Xml.XmlDocument` dependencies
- remove project.json (!!), *.xproj, .notest, and web.config files

Redo earlier changes:
- apply test migration to .NET 4.5.2 in *.csproj world
  - see 63507c8 for previous, project.json work
- apply dependency version downgrade from 0097e40 in *.csproj world

Make other test-related changes:
- make Microsoft.AspNetCore.Mvc.TestDiagnosticListener a regular class library
- add support for `/p:GenerateBaselines=true` for functional and Razor.Host tests
- separate `GetCSharpTypeName_ReturnsCorrectTypeNames_ForOutParameter()` test
  - work around inability to deserialize a odd `ref` type
  - xUnit and vstest now serialize / deserialze test data more often
- skip poor test mentioned in #5768
- work around Microsoft/vstest#392
  - rename tests to avoid duplicates
- work around Microsoft/vstest#419
  - set up created `AppDomain`s with current `ApplicationBase`
2017-02-28 21:20:39 -08:00
Stefan Nikolei 0e914e55fa Remove double null check (#5862)
Address #5834
2017-02-28 12:00:23 -08:00
Pranav K ae61c7005c React to Microsoft.CodeAnalysis.Razor version change 2017-02-27 17:12:37 -08:00
Pranav K de30c5822a * Cache ExecutorFactory as part of CompiledActionDescriptor
* Add tests for ExecutorFactory
2017-02-24 11:56:13 -08:00
martincostello 498c1c570d Update error message
Update error message based on PR feedback to less C# specific.
2017-02-23 14:21:58 -08:00
martincostello 9950325269 Update view compilation error message
Update view compilation error message for csproj instead of
project.json.
2017-02-23 14:21:58 -08:00
Steve Smith f3b1f2ca29 Fixing doc comments 2017-02-23 11:13:34 -08:00
Ryan Nowak e11e6b3be7 Add TempData property and some functional tests 2017-02-22 08:14:02 -08:00
Ryan Nowak 19331f9532 Adding some basic functional tests
I ran into a blocking issue where page handlers aren't picked up, so I
fixed it. Logging another issue to follow up with better tests for this.
2017-02-21 16:41:25 -08:00
Steve Smith 39f41eae3c Fixing typo (an -> a) 2017-02-21 06:52:30 -08:00
Ajay Bhargav Baaskaran 11d747fc33 React to CSharpTokenIRNode being removed 2017-02-17 19:31:33 -08:00
Ajay Bhargav Baaskaran 0f5d5ff3b5 React to aspnet/Razor#1017 2017-02-17 16:01:54 -08:00
Jass Bagga 927e75870d Add BindingSourceMetadataProvider
Addresses #5673
2017-02-17 13:22:10 -08:00
Ryan Brandenburg 366dbde378 Add culture constructor to RouteValueProvider 2017-02-16 14:47:34 -08:00
Ryan Brandenburg 239e2202e1 ActionContextAccessor netstandard behave like net451 (#5810) 2017-02-16 14:34:13 -08:00
Ryan Brandenburg 401296ac43 Remove unneeded InternalsVisibleTo (#5809) 2017-02-16 12:01:42 -08:00
Nate McMaster 0097e40e46 Downgrade to stable packages 2017-02-15 14:23:48 -08:00
Kiran Challa a00acceaa9 Merge branch 'rel/1.1.2' into dev 2017-02-15 12:43:37 -08:00
Kiran Challa 29647fda33 [Fixes #5801] Move call to validate constructor in ComplexTypeModelBinder into CreateModel 2017-02-15 12:33:01 -08:00
Ajay Bhargav Baaskaran 38e1e7d14e React to aspnet/Razor#996 2017-02-14 15:11:39 -08:00
Pranav K eb820106e2 Generate the class name from relative path 2017-02-14 09:41:05 -08:00
Ajay Bhargav Baaskaran 44048331e9 Make `ViewComponent.View()` overloads respect explicitly passed in model even when `null` 2017-02-13 17:08:48 -08:00
Pranav K 35edc299d7 Fix test failures
Fixes #5794
2017-02-13 12:03:10 -08:00
Ryan Nowak 2cdd84f437 Remove pranav's hack
This is part 1 of the right fix for the directive getting removed. This
pass has the wrong order, an it should be running sooner before the
directive is processed by the default processor.
2017-02-13 09:23:58 -08:00
Ryan Nowak af5648c1f7 Merge branch 'rel/1.1.2' into dev 2017-02-13 08:34:18 -08:00
Ryan Nowak 531c11df2a Fix 5594 - ExceptionHandled + Result is broken
This change ensures that setting ExceptionContext.Result will always
execute if set. The problem with 1.1.0 is that when we had a real short
circuit the wrong set of conditions were checked. I suspect that when you
set ExceptionFilter.Result and didn't short circuit that result filters
were also running (which is a bug).

Added a few tests that verify that the result doesn't trigger result
filters.

I did some general cleanup on this code path to make the state transitions
more clear.

No exception was thrown -> BeginResult
Exception was handled -> ExceptionHandled
Exception was not handled -> gets rethrown
2017-02-13 07:58:32 -08:00
Doug Bunting 4bddb5ff1b Small follow up to 8ee3d45
- rename `containsIndexers` to `doNotCache` in `ExpressionHelper`
2017-02-10 16:46:55 -08:00
Doug Bunting fc40985412 Merge branch 'rel/1.1.2' into dev 2017-02-10 14:55:32 -08:00
Doug Bunting 8ee3d45ef1 Do not cache expressions containing method calls
- #5655
- also make `ExpressionTextCache` more robust for defence-in-depth

nits:
- two `null` expression nodes are equal
- declare data properties as `TheoryData<T>`
2017-02-10 14:50:09 -08:00
Pranav K 1652bf554f Workaround APICheck errors 2017-02-10 12:46:15 -08:00
Kiran Challa 842d661ac2 [Fixes #5698] Regression in 1.1 model binding for model types without default constructor
- Also reverts "Check for default constructor in ComplexTypeModelBinderProvider" commit d09e921c4a.
2017-02-10 11:10:02 -08:00
Pranav K bc3a741eee Use DocumentClassifierPassBase
Workaround issue with the model directive disappearing
2017-02-09 20:30:31 -08:00
Pranav K 8b03e9ef73 Make PageStart work
Move more API to RazorPageBase
2017-02-09 18:23:01 -08:00
Ryan Brandenburg bd9e431873 Order IgnoreAntiforgeryTokenAttribute and add test (#5765) 2017-02-08 09:37:43 -08:00
Pranav K f474d8bc52 React to optional Razor directive token feature 2017-02-07 21:58:31 -08:00
Ryan Nowak 9264f3aa2d Add TryUpdateModelAsync to pages 2017-02-07 21:16:40 -08:00
Ryan Nowak 314aa366e1 Add TempData property support for Pages 2017-02-07 15:27:02 -08:00
Pranav K 690ef186a3 Add PageActionDescriptorChangeProvider to allow reloading on page changes 2017-02-07 12:53:44 -08:00
Pranav K 2ff80ffb49 Porting DefaultPageHandlerMethodSelector and ExecutorFactory 2017-02-07 12:44:27 -08:00
Pranav K 624909763b Make _PageImports work
Add support for generating the Model property
2017-02-07 11:13:15 -08:00
Pranav K 9f3dfd9819 Make RazorPages work E2E 2017-02-06 19:05:31 -08:00
Ajay Bhargav Baaskaran c349929cc1 Port old Razor tests to new Razor 2017-02-03 17:09:18 -08:00
Pranav K 8d5abd433f Add support for PageStarts 2017-02-03 15:57:00 -08:00
Kiran Challa c95c2a5a6d [Fixes #5686] Extend `ModelMetadata` to reduce ugliness 2017-02-03 11:37:28 -08:00
Ryan Brandenburg dc0be8d747 SaveTempDataFilter handle write to body
(cherry picked from commit 03cdd15e5c)
2017-02-03 10:41:36 -08:00
Ryan Nowak cf70ed663b Merge tag 'rel/1.1.1' into dev 2017-02-03 10:31:17 -08:00
Ajay Bhargav Baaskaran 1777f7babd Enabling Razor Instrumentation 2017-02-01 15:29:09 -08:00
Ryan Nowak 4c62eb89af Unit tests for VCTH and model directive 2017-01-31 13:14:20 -08:00
Ryan Nowak 705369ee51 Add unit tests for ModelExpressionPass
Add unit tests for @inject
2017-01-30 19:08:39 -08:00
Ryan Nowak b79f8384b0 Make some methods public for ViewCompilation. 2017-01-30 13:46:27 -08:00
Ryan Nowak 84d2e027f5 Use new Razor in MVC 2017-01-30 10:55:49 -08:00
Jass Bagga 7449ffad74 Add include and exclude attributes to EnvironmentTagHelper
Addresses #5671
2017-01-27 14:46:53 -08:00
Joonas Westlin d44c9aee1e Added printing of route values when a route is not matched 2017-01-27 11:31:05 -08:00
Kiran Challa 17dc23a024 [Fixes #5637] Make CookieName of CookieTempDataProvider configurable 2017-01-27 11:01:26 -08:00
Ryan Brandenburg 03cdd15e5c SaveTempDataFilter handle write to body 2017-01-27 10:54:00 -08:00
Pranav K 3e214e2399 Introducing IPageModelActivatorProvider
Fixes #5480
2017-01-26 11:31:14 -08:00
Jass Bagga 9b1271ba19 Remove obsolete DefaultHtmlGenerator ctor (#5711) 2017-01-25 16:25:12 -08:00
Kiran Challa 42ae78a360 [Fixes #5012] ProducesAttribute should not inherit from ResultFilterAttribute 2017-01-25 14:00:35 -08:00
Kiran Challa 8ac6b6699f [Fixes #4945] Simple string returned by controller action is not a valid JSON! 2017-01-25 13:29:18 -08:00
Ryan Nowak 5885feb7c0 Fixes a parsing bug with the AcceptHeaderParser
When we find an invalid character at the end of a media type value we
should advance and skip over it.
2017-01-23 13:12:40 -08:00
Ryan Brandenburg 305748a800 Move classes out of .Internal 2017-01-19 11:11:28 -08:00
Ryan Brandenburg 6396e14504 Add null-check back to MediaType 2017-01-18 16:56:08 -08:00
Jass Bagga 6f7fc4fb34 Remove obsolete ViewEngine (#5699) 2017-01-18 16:29:20 -08:00
Pranav K 24efd4268b Pin the version of RazorTooling packages to 1.1.0-preview4-final 2017-01-17 11:55:15 -08:00
Pranav K e749a80b30 Check for empty location in ViewsFeatureProvider
Fixes #5675
2017-01-17 11:07:48 -08:00
Doug Bunting ce53675b87 Add `[ValidateNever]` and `IPropertyValidationFilter`
- #5642
- lazy-load `ValidationEntry.Model`
  - avoids `Exception`s when moving to a property that will not be validated

nits:
- remove duplicate code in `ValidationVisitor`
- clarify "all properties of" doc comments
  - also add missing `<param>` doc in `ViewDataInfo`
2017-01-15 21:40:29 -08:00
Jass Bagga 07c22f2b29 Mutate API description parameter type from JsonPatchDocument to Operation[]
Addresses #5464
2017-01-13 16:39:08 -08:00
Jass Bagga f95d49c870 Change datetime to datetime-local
Addresses #4871
2017-01-13 15:40:30 -08:00
Ryan Brandenburg 93774a0234 Mitigate MediaType overflow 2017-01-13 12:51:19 -08:00
Pranav K a7abdeabcd Introducing PageActionInvoker 2017-01-13 11:49:02 -08:00
Pranav K 13b32adeae Move InvokeAsync to ResourceInvoker 2017-01-11 11:13:05 -08:00
Pranav K 6b0282fa84 Commonize code from ControllerActionInvokerCache and PageFilterFactoryProvider 2017-01-11 10:53:23 -08:00