Go to file
Ryan Nowak e401f35b45
Header propagation sample and UX improvements (#9793)
Creating a sample for the header propagation package and some various
misc UX improvements based on building the sample.

A small list:
- allow duplicate inbound names
- de-dupe based on outbound names
- add sugar for configuration
- simplify pattern for transforming values
- add error message for missing middleware

Also a few small perf things.

I started this out by wanting to remove the following from the
configuration pattern:
```C#
options.Headers.Add("X-TraceId", null);
```

This pattern with null is undiscoverable, but we didn't provide
something simpler. The most common case was to add a custom collection
type so we can define sugar methods.

The next realization is that in practical case (dist tracing sample) you
either way to *key* off of the same inbound header twice, or you don't
have an inbound header at all, and you will synthesize the value every
time. This means that the way we're treating inbound header names is a
bit wrong. We don't want inbound header names to be unique, we want
*outbound header names to be unique*.

Next, I want to consolidate DefaultValue and ValueFactory. The problems
I saw with this:
- DefaultValue is a trap. It's rare to use a static value.
- ValueFactory really wants the header name *and* value

I think what's there now is much more terse to work with.
2019-05-07 11:07:42 -07:00
.azure/pipelines EnableAzurePipelinesReporter for helix (#8094) 2019-05-05 22:15:10 -07:00
.config
.github
.vscode
build EnableAzurePipelinesReporter for helix (#8094) 2019-05-05 22:15:10 -07:00
docs Stop running InstalVisualStudio.ps1 during CI builds (#9515) 2019-04-19 07:51:51 -07:00
eng EnableAzurePipelinesReporter for helix (#8094) 2019-05-05 22:15:10 -07:00
src Header propagation sample and UX improvements (#9793) 2019-05-07 11:07:42 -07:00
.editorconfig
.gitattributes
.gitignore
.gitmodules
CONTRIBUTING.md
Directory.Build.props Enable Pubternal API checks (#9530) 2019-04-19 18:49:07 -07:00
Directory.Build.targets Remove API check baselines and related project settings (#9846) 2019-04-30 14:58:13 -07:00
LICENSE.txt
NuGet.config Remove unnecessary restore feeds and update yarn.lock file (#9845) 2019-04-30 08:57:49 -07:00
README.md
THIRD-PARTY-NOTICES.txt Update MessagePack commit to be inline with upstream changes (#9753) 2019-05-03 10:43:45 -07:00
activate.ps1
activate.sh
build.cmd
build.ps1
build.sh
dockerbuild.sh
global.json EnableAzurePipelinesReporter for helix (#8094) 2019-05-05 22:15:10 -07:00
korebuild-lock.txt Update SDK to 3.0.100-preview5-011568 (#9963) 2019-05-04 17:05:34 -07:00
korebuild.json Stop running InstalVisualStudio.ps1 during CI builds (#9515) 2019-04-19 07:51:51 -07:00
restore.cmd
restore.sh
startvs.cmd
version.props Update prerelease version for preview 6 (#9647) 2019-04-22 13:42:18 -07:00

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.