Joni 3fb4e9d810 Add missing space in ASP.NET Core "display_name" (#6542) 4 年之前
..
aspnetcore 3fb4e9d810 Add missing space in ASP.NET Core "display_name" (#6542) 4 年之前
aspnetcore-corert ba6b3a3618 ASP.NET Core naming clarity (#6507) 4 年之前
aspnetcore-mono ba6b3a3618 ASP.NET Core naming clarity (#6507) 4 年之前
beetlex 540226cbad change server tag (#6432) 4 年之前
ben ba6b3a3618 ASP.NET Core naming clarity (#6507) 4 年之前
carter 0096f84ee9 Config for the new toolset (#6259) 4 年之前
easyrpc 023723455d Upgrading to EasyRpc 5.0.0 (#6525) 4 年之前
embedio 9d18b6e21b make sure all have versus key (#6265) 4 年之前
evhttp-sharp 0096f84ee9 Config for the new toolset (#6259) 4 年之前
genhttp 203629cbb9 Update server version and set server header to 'TFB' (#6305) 4 年之前
nancy ba6b3a3618 ASP.NET Core naming clarity (#6507) 4 年之前
netcoreserver 9a3dfa8712 Add NetCoreServer framework (C#) (#6272) 4 年之前
revenj 0096f84ee9 Config for the new toolset (#6259) 4 年之前
servicestack 5ffa0ddadd [c#/beetlex] change plaintext buffer size, optimize fortunes. (#6300) 4 年之前
tetsuweb 0096f84ee9 Config for the new toolset (#6259) 4 年之前
watson 2ee4a7aa8f Add Watson Webserver framework (#6273) 4 年之前
zysocket-v 0096f84ee9 Config for the new toolset (#6259) 4 年之前
.gitignore 7dd3c03941 Update .NET Dockerfiles to use Microsoft Container Registry (#4919) 6 年之前
README.md 03b1cea4da Update ASP.Net Core version to 3.1 (LTS) (#5339) 5 年之前

README.md

C# (CSharp) Frameworks

The information below contains information specific to C#. For further guidance, review the documentation.

Infrastructure Software Versions

Adding a New C# Framework

Different Mono Versions

While we have not currently run into the need to have multiple simultaneous Mono installations, it is possible

Debugging Mono + NuGet

Mono understands an environment variable MONO_LOG_LEVEL=debug that is helpful for checking that mono is properly working e.g. loading necessary DLL's.

Most NuGet commands understand a -Verbosity flag, which is great because the error messages can be completely mystifying when working with Mono too. Use this would enable all the debugging you can:

$ MONO_LOG_LEVEL=debug mono NuGet2.exe update -Verbosity "detailed" -self

For example, aspnet was constantly failing with this message:

Could not connect to the feed specified at 'https://www.nuget.org/api/v2/'. Please verify that the package source (located in the Package Manager Settings) is valid and ensure your network connectivity.`. 

Using -Verbosity "detailed" shows that the real error is actually a Mono library problem, as so:

System.InvalidOperationException: Could not connect to the feed specified at 'https://www.nuget.org/api/v2/'. Please verify that the package source (located in the Package Manager Settings) is valid and ensure your network connectivity. ---> System.Net.WebException: libMonoPosixHelper.so ---> System.DllNotFoundException: libMonoPosixHelper.so
  at (wrapper managed-to-native) System.IO.Compression.DeflateStreamNative:CreateZStream (System.IO.Compression.CompressionMode,bool,System.IO.Compression.DeflateStreamNative/UnmanagedReadOrWrite,intptr)
  <snip>

More helpful info is here, here

Limited Travis-CI Verification

Because the verification system uses the linux-only Travis-CI service, verifying Windows-only tests has to be done manually and is very time consuming.

Consider including an additional test, likely based on Mono and FastCGI (e.g. xsp), that can run on Linux when submitting a new framework. This will drastically speed up our ability to merge in your pull request.

Get Help

C# Experts

There aren't any C# experts listed, yet. If you're an expert, add yourself!

C# Community

Discord: http://aka.ms/csharp-discord

Resources

If you stumble upon some helpful links or discussions, add them for easy reference for future contributors.

Note about this ServiceStack test

Only the default ngnix test for linux remains in the benchmark_config as it is the only one that has consistently appeared in final round results. The xsp tests and nginx database tests are not currently working, though the supporting files remain. Pull requests to fix these implementations are welcome!