Go to file
Steve Sanderson cbbdeaefd4
Enforce correct sync context on render, and allow explicit dispatch to sync context. Fixes #5639 (#6604)
* Only use async marshalling to renderer sync context when necessary

Note that the lifecycle methods already take care of capturing the correct sync context, so continuations will already be serialized.
Avoiding an extra layer of asynchrony keeps the semantics of rendering closer to the WebAssembly cases, and will fix a range of intermittent errors in the wild.

* Add E2E test of triggering rendering from outside the sync context

* Actually throw if attempting to render from incorrect sync context

* Add "Dispatch" API

* Handle dispatch within dispatch. Also test Dispatch on WebAssembly.

* Avoid heap allocation

* Simplify E2E test

* Replace Dispatch() with Invoke() and InvokeAsync()

* Add E2E test to validate async execution order

* Clean up
2019-01-14 15:31:53 +00:00
.azure/pipelines Switch agent queues used during Windows builds 2019-01-11 15:16:57 -08:00
.config
.github
.vscode
build Merge branch 'release/2.2' 2019-01-11 07:20:00 -08:00
docs Merge branch 'release/2.2' 2019-01-11 07:20:00 -08:00
eng Switch agent queues used during Windows builds 2019-01-11 15:16:57 -08:00
src Enforce correct sync context on render, and allow explicit dispatch to sync context. Fixes #5639 (#6604) 2019-01-14 15:31:53 +00:00
.editorconfig
.gitattributes
.gitignore Merge branch 'release/2.2' 2019-01-11 07:20:00 -08:00
.gitmodules
CONTRIBUTING.md
Directory.Build.props Merge branch 'release/2.2' 2019-01-11 07:20:00 -08:00
Directory.Build.targets Merge branch 'release/2.2' 2019-01-11 07:20:00 -08:00
LICENSE.txt
NuGet.config
README.md
THIRD-PARTY-NOTICES.txt
build.cmd
build.ps1 Switch agent queues used during Windows builds 2019-01-11 15:16:57 -08:00
build.sh
dockerbuild.sh
global.json Merge branch 'release/2.2' 2019-01-11 07:20:00 -08:00
korebuild-lock.txt Merge branch 'release/2.2' 2019-01-11 07:20:00 -08:00
korebuild.json Switch agent queues used during Windows builds 2019-01-11 15:16:57 -08:00
restore.cmd
restore.sh
startvs.cmd
version.props

README.md

ASP.NET Core

ASP.NET Core is an open-source and cross-platform framework for building modern cloud based internet connected applications, such as web apps, IoT apps and mobile backends. ASP.NET Core apps can run on .NET Core or on the full .NET Framework. It was architected to provide an optimized development framework for apps that are deployed to the cloud or run on-premises. It consists of modular components with minimal overhead, so you retain flexibility while constructing your solutions. You can develop and run your ASP.NET Core apps cross-platform on Windows, Mac and Linux. Learn more about ASP.NET Core.

Get Started

Follow the Getting Started instructions in the ASP.NET Core docs.

Also check out the .NET Homepage for released versions of .NET, getting started guides, and learning resources.

How to Engage, Contribute, and Give Feedback

Some of the best ways to contribute are to try things out, file issues, join in design conversations, and make pull-requests.

Reporting security issues and bugs

Security issues and bugs should be reported privately, via email, to the Microsoft Security Response Center (MSRC) secure@microsoft.com. You should receive a response within 24 hours. If for some reason you do not, please follow up via email to ensure we received your original message. Further information, including the MSRC PGP key, can be found in the Security TechCenter.

These are some other repos for related projects:

Code of conduct

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.