Pranav K
cdae83efae
Use the declared type to infer NullableContextOptions ( #15134 )
...
* Use the declared type to infer NullableContextOptions
Prior to this change MVC used the runtime type rather than the declared type to
determine the nullability of a property based on state. In the case of inheritance,
this can be erroneous since the declared type may have a different nullability context
than the model type.
This change addresses this by adding content to `ModelIdentity` that allows inspecting the
declared type.
* Add an overload to `ModelMetadataIdentity` that allows flowing `PropertyInfo`
* Use the declared type in `DataAnnotationsMetadataProvider` to determine nullability based on context.
Fixes https://github.com/aspnet/AspNetCore/issues/14812
2019-10-20 06:30:58 -07:00
dotnet-maestro[bot]
8b7f662169
[release/3.1] Update dependencies from 2 repositories ( #13571 )
...
* Fix build
* Fix build.cmd
* Resolve build warnings
* Update ref assemblies
* Missed TFM updates
* Fix source build
* Update dependencies from https://github.com/aspnet/EntityFrameworkCore build 20190913.13
- Microsoft.EntityFrameworkCore.Tools - 3.1.0-preview1.19463.13
- Microsoft.EntityFrameworkCore.SqlServer - 3.1.0-preview1.19463.13
- dotnet-ef - 3.1.0-preview1.19463.13
- Microsoft.EntityFrameworkCore - 3.1.0-preview1.19463.13
- Microsoft.EntityFrameworkCore.InMemory - 3.1.0-preview1.19463.13
- Microsoft.EntityFrameworkCore.Relational - 3.1.0-preview1.19463.13
- Microsoft.EntityFrameworkCore.Sqlite - 3.1.0-preview1.19463.13
Dependency coherency updates
- Microsoft.AspNetCore.Analyzer.Testing - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.AspNetCore.BenchmarkRunner.Sources - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.ActivatorUtilities.Sources - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Caching.Abstractions - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Caching.Memory - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Caching.SqlServer - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Caching.StackExchangeRedis - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.CommandLineUtils.Sources - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Configuration.Abstractions - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Configuration.AzureKeyVault - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Configuration.Binder - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Configuration.CommandLine - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Configuration.EnvironmentVariables - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Configuration.FileExtensions - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Configuration.Ini - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Configuration.Json - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Configuration.KeyPerFile - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Configuration.UserSecrets - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Configuration.Xml - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Configuration - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.DependencyInjection.Abstractions - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.DependencyInjection - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.DiagnosticAdapter - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Diagnostics.HealthChecks - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.FileProviders.Abstractions - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.FileProviders.Composite - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.FileProviders.Embedded - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.FileProviders.Physical - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.FileSystemGlobbing - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.HashCodeCombiner.Sources - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Hosting.Abstractions - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Hosting - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.HostFactoryResolver.Sources - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Http - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Localization.Abstractions - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Localization - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Logging.Abstractions - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Logging.AzureAppServices - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Logging.Configuration - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Logging.Console - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Logging.Debug - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Logging.EventSource - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Logging.EventLog - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Logging.TraceSource - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Logging.Testing - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.ObjectPool - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Options.ConfigurationExtensions - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Options.DataAnnotations - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Options - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.ParameterDefaultValue.Sources - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.Primitives - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.TypeNameHelper.Sources - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.ValueStopwatch.Sources - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Extensions.WebEncoders - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Internal.Extensions.Refs - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.JSInterop - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Mono.WebAssembly.Interop - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Bcl.AsyncInterfaces - 1.1.0-preview1.19463.3 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- Microsoft.NETCore.App.Runtime.win-x64 - 3.1.0-preview1.19463.3 (parent: Microsoft.Extensions.Logging)
- Microsoft.Extensions.Logging - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.CSharp - 4.7.0-preview1.19463.3 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- Microsoft.Win32.Registry - 4.7.0-preview1.19463.3 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- Microsoft.Win32.SystemEvents - 4.7.0-preview1.19463.3 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- System.ComponentModel.Annotations - 4.7.0-preview1.19463.3 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- System.Diagnostics.EventLog - 4.7.0-preview1.19463.3 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- System.Drawing.Common - 4.7.0-preview1.19463.3 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- System.IO.Pipelines - 4.7.0-preview1.19463.3 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- System.Net.Http.WinHttpHandler - 4.7.0-preview1.19463.3 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- System.Net.WebSockets.WebSocketProtocol - 4.7.0-preview1.19463.3 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- System.Reflection.Metadata - 1.8.0-preview1.19463.3 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- System.Runtime.CompilerServices.Unsafe - 4.7.0-preview1.19463.3 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- System.Security.Cryptography.Cng - 4.7.0-preview1.19463.3 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- System.Security.Cryptography.Pkcs - 4.7.0-preview1.19463.3 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- System.Security.Cryptography.Xml - 4.7.0-preview1.19463.3 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- System.Security.Permissions - 4.7.0-preview1.19463.3 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- System.Security.Principal.Windows - 4.7.0-preview1.19463.3 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- System.ServiceProcess.ServiceController - 4.7.0-preview1.19463.3 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- System.Text.Encodings.Web - 4.7.0-preview1.19463.3 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- System.Text.Json - 4.7.0-preview1.19463.3 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- System.Threading.Channels - 4.7.0-preview1.19463.3 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- System.Windows.Extensions - 4.7.0-preview1.19463.3 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- Microsoft.Extensions.DependencyModel - 3.1.0-preview1.19463.3 (parent: Microsoft.Extensions.Logging)
- Microsoft.NETCore.App.Ref - 3.1.0-preview1.19463.3 (parent: Microsoft.Extensions.Logging)
- NETStandard.Library.Ref - 2.1.0-preview1.19463.3 (parent: Microsoft.Extensions.Logging)
- Microsoft.NETCore.Platforms - 3.1.0-preview1.19463.3 (parent: Microsoft.NETCore.App.Runtime.win-x64)
- Internal.AspNetCore.Analyzers - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.AspNetCore.Testing - 3.1.0-preview1.19463.6 (parent: Microsoft.EntityFrameworkCore)
- Microsoft.Net.Compilers.Toolset - 3.4.0-beta2-19462-08 (parent: Microsoft.Extensions.Logging)
* Fix tests
* Skip dotnet-openapi tests
* Add AssemblyName to nuspec to fix build
* Fix templates
* Fix template tests
* Update eng/Versions.props
* Feedback
* Hard code TFM in tools
* Fix build warnings
* Update dependencies from https://github.com/aspnet/AspNetCore-Tooling build 20190915.1
- Microsoft.NET.Sdk.Razor - 3.1.0-preview1.19465.1
- Microsoft.CodeAnalysis.Razor - 3.1.0-preview1.19465.1
- Microsoft.AspNetCore.Razor.Language - 3.1.0-preview1.19465.1
- Microsoft.AspNetCore.Mvc.Razor.Extensions - 3.1.0-preview1.19465.1
2019-09-15 21:27:50 -07:00
Ryan Nowak
45f50905d5
Remove stateful prerendering
...
Fixes : #12245
Fixes : #12630
This change removes stateful pre-rendering from Server-Side Blazor. This
means that when you render a component during the initial HTTP request,
we we will no longer preserve the component instances and their
parameters. While this feature was useful, it cause serious scalability
concerns.
This means that it will now be required to register "entry-point"
components in startup similar to client-side Blazor.
2019-08-01 07:44:14 -07:00
Ryan Nowak
91e6839c8d
Adds inferred [Required] for non-null ref types ( #9978 )
...
* Adds inferred [Required] for non-null ref types
Follow up from #9194
This change adds the automatic inference of [Required] for non-nullable
properties and parameters. This means that if you opt into nullable
context in C#8, we'll start treating those types as-if you put
[Required] on them.
This provides a nice invariant to rely on, namely that MVC will honor
your declared nullability contract OR report a validation error. This
reinforces the guidance already published by the C# team for using
POCOs/DTOs with nullability. See
https://github.com/aspnet/specs/blob/master/notes/3_0/nullable.md for my
analysis on the topic.
* preemptively fix PR feedback xD
* PR feedback and functional test
* more
* Fix test failures
* fix
* more
* Do a barrel roll
2019-06-02 17:11:43 -07:00
Pranav K
093df67c06
Avoid buffering during input formatting for longer than necessary ( #9806 )
...
* Avoid buffering during input formatting for longer than necessary
EnableRewind uses FileBufferingReadStream which is not disposed until the response is completed.
This results in holding on to internal buffers for significantly longer than necessary. Changing it
to return the buffers immediately improved the allocations and throughput.
2019-05-03 06:45:52 -07:00
Doug Bunting
dfae19ee7c
Merge branch 'release/2.2' -> 'master'
2019-04-19 18:53:15 -07:00
Nate McMaster
d004cf0f14
Merge branch 'release/2.1' into release/2.2
2019-04-15 16:42:07 -07:00
Pranav K
5424045dac
Ensure PackageArchive contains the right build of Razor.Design package ( #6992 )
...
* Ensure PackageArchive contains the right build of Razor.Design package
* Re-order values in build\dependencies.props to ensure Razor.Design's package version is
overwritten.
* Convert additional package refs to project refs
Fixes https://github.com/aspnet/AspNetCore-Internal/issues/1708
* Update CodeCheck.ps1
2019-04-11 17:14:11 -07:00
Javier Calvarro Nelson
8499a27c7f
[Components] Relayer + Robust reconnect ( #8911 )
...
* [MVC][Components] Prerendering + Robust reconnect
* Relayers prerendering support on a separate package on top of MVC and
components.
* Implements robust reconects with acknowledgements from the client.
* Improves interactive prerendering with the ability to reconnect to
prerendered components.
* Removes the need to register components statically when prerendering
them.
* Removes the need of using an element selector when prerendering an
interactive component.
* Updates the templates to use the new fallback routing pattern and
reenables the components test.
* Adds eslint to the Typescript project to help maintain a consistent
style.
* Adds logging to support better debugging based on the pattern used by
signalr.
* Fixes exception handling on the server to always report exceptions correctly to the client.
2019-04-02 19:17:03 +02:00
Ajay Bhargav Baaskaran
7a26d27e8b
Merge branch 'release/2.2'
2019-02-14 16:08:51 -08:00
Ajay Bhargav Baaskaran
0c2ee920a1
Merge branch 'release/2.1' into release/2.2
2019-02-13 14:52:38 -08:00
Ajay Bhargav Baaskaran
4cceccd568
Make Mvc repo folder layout consistent ( #7518 )
2019-02-13 10:53:39 -08:00