diff --git a/frameworks/CSharp/aspnetcore/Benchmarks/Benchmarks.csproj b/frameworks/CSharp/aspnetcore/Benchmarks/Benchmarks.csproj index 53993d1f71b..c138ffc0604 100644 --- a/frameworks/CSharp/aspnetcore/Benchmarks/Benchmarks.csproj +++ b/frameworks/CSharp/aspnetcore/Benchmarks/Benchmarks.csproj @@ -1,8 +1,9 @@  - net6.0 + net7.0 Exe enable + true @@ -13,10 +14,10 @@ - + - - + + diff --git a/frameworks/CSharp/aspnetcore/PlatformBenchmarks/AsciiString.cs b/frameworks/CSharp/aspnetcore/PlatformBenchmarks/AsciiString.cs deleted file mode 100644 index 34c4a0f0adb..00000000000 --- a/frameworks/CSharp/aspnetcore/PlatformBenchmarks/AsciiString.cs +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -using System.Text; - -namespace PlatformBenchmarks; - -public readonly struct AsciiString : IEquatable -{ - private readonly byte[] _data; - - public AsciiString(string s) => _data = Encoding.ASCII.GetBytes(s); - - private AsciiString(byte[] b) => _data = b; - - public int Length => _data.Length; - - public ReadOnlySpan AsSpan() => _data; - - public static implicit operator ReadOnlySpan(AsciiString str) => str._data; - public static implicit operator byte[](AsciiString str) => str._data; - - public static implicit operator AsciiString(string str) => new(str); - - public override string ToString() => Encoding.ASCII.GetString(_data); - public static explicit operator string(AsciiString str) => str.ToString(); - - public bool Equals(AsciiString other) => ReferenceEquals(_data, other._data) || SequenceEqual(_data, other._data); - private bool SequenceEqual(byte[] data1, byte[] data2) => new Span(data1).SequenceEqual(data2); - - public static bool operator ==(AsciiString a, AsciiString b) => a.Equals(b); - public static bool operator !=(AsciiString a, AsciiString b) => !a.Equals(b); - public override bool Equals(object other) => (other is AsciiString @string) && Equals(@string); - - public static AsciiString operator +(AsciiString a, AsciiString b) - { - var result = new byte[a.Length + b.Length]; - a._data.CopyTo(result, 0); - b._data.CopyTo(result, a.Length); - return new AsciiString(result); - } - - public override int GetHashCode() - { - // Copied from x64 version of string.GetLegacyNonRandomizedHashCode() - // https://github.com/dotnet/coreclr/blob/master/src/mscorlib/src/System/String.Comparison.cs - var data = _data; - int hash1 = 5381; - int hash2 = hash1; - foreach (int b in data) - { - hash1 = ((hash1 << 5) + hash1) ^ b; - } - return hash1 + (hash2 * 1566083941); - } - -} diff --git a/frameworks/CSharp/aspnetcore/PlatformBenchmarks/BenchmarkApplication.Fortunes.cs b/frameworks/CSharp/aspnetcore/PlatformBenchmarks/BenchmarkApplication.Fortunes.cs index a60f6a3fc4a..ee9e94ff12f 100644 --- a/frameworks/CSharp/aspnetcore/PlatformBenchmarks/BenchmarkApplication.Fortunes.cs +++ b/frameworks/CSharp/aspnetcore/PlatformBenchmarks/BenchmarkApplication.Fortunes.cs @@ -12,11 +12,11 @@ namespace PlatformBenchmarks { public partial class BenchmarkApplication { - private readonly static AsciiString _fortunesPreamble = - _http11OK + - _headerServer + _crlf + - _headerContentTypeHtml + _crlf + - _headerContentLength; + private static ReadOnlySpan _fortunesPreamble => + "HTTP/1.1 200 OK\r\n"u8 + + "Server: K"u8 + "\r\n"u8 + + "Content-Type: text/html; charset=UTF-8"u8 + "\r\n"u8 + + "Content-Length: "u8; private async Task Fortunes(PipeWriter pipeWriter) { diff --git a/frameworks/CSharp/aspnetcore/PlatformBenchmarks/BenchmarkApplication.Json.cs b/frameworks/CSharp/aspnetcore/PlatformBenchmarks/BenchmarkApplication.Json.cs index 02835c67f35..42df639c24a 100644 --- a/frameworks/CSharp/aspnetcore/PlatformBenchmarks/BenchmarkApplication.Json.cs +++ b/frameworks/CSharp/aspnetcore/PlatformBenchmarks/BenchmarkApplication.Json.cs @@ -10,11 +10,11 @@ public partial class BenchmarkApplication { private readonly static uint _jsonPayloadSize = (uint)JsonSerializer.SerializeToUtf8Bytes(new JsonMessage { message = "Hello, World!" }, SerializerContext.JsonMessage).Length; - private readonly static AsciiString _jsonPreamble = - _http11OK + - _headerServer + _crlf + - _headerContentTypeJson + _crlf + - _headerContentLength + _jsonPayloadSize.ToString(); + private static ReadOnlySpan _jsonPreamble => + "HTTP/1.1 200 OK\r\n"u8 + + "Server: K"u8 + "\r\n"u8 + + "Content-Type: application/json"u8 + "\r\n"u8 + + "Content-Length: 27"u8; private static void Json(ref BufferWriter writer, IBufferWriter bodyWriter) { diff --git a/frameworks/CSharp/aspnetcore/PlatformBenchmarks/BenchmarkApplication.Plaintext.cs b/frameworks/CSharp/aspnetcore/PlatformBenchmarks/BenchmarkApplication.Plaintext.cs index 809ef6b3741..16a7c0f76eb 100644 --- a/frameworks/CSharp/aspnetcore/PlatformBenchmarks/BenchmarkApplication.Plaintext.cs +++ b/frameworks/CSharp/aspnetcore/PlatformBenchmarks/BenchmarkApplication.Plaintext.cs @@ -5,11 +5,11 @@ namespace PlatformBenchmarks; public partial class BenchmarkApplication { - private readonly static AsciiString _plaintextPreamble = - _http11OK + - _headerServer + _crlf + - _headerContentTypeText + _crlf + - _headerContentLength + _plainTextBody.Length.ToString(); + private static ReadOnlySpan _plaintextPreamble => + "HTTP/1.1 200 OK\r\n"u8 + + "Server: K\r\n"u8 + + "Content-Type: text/plain\r\n"u8 + + "Content-Length: 13"u8; private static void PlainText(ref BufferWriter writer) { diff --git a/frameworks/CSharp/aspnetcore/PlatformBenchmarks/BenchmarkApplication.cs b/frameworks/CSharp/aspnetcore/PlatformBenchmarks/BenchmarkApplication.cs index b6a78f227d9..2ff1b8157e0 100644 --- a/frameworks/CSharp/aspnetcore/PlatformBenchmarks/BenchmarkApplication.cs +++ b/frameworks/CSharp/aspnetcore/PlatformBenchmarks/BenchmarkApplication.cs @@ -14,27 +14,27 @@ namespace PlatformBenchmarks; public partial class BenchmarkApplication { - private readonly static AsciiString _applicationName = "Kestrel Platform-Level Application"; - public static AsciiString ApplicationName => _applicationName; - - private readonly static AsciiString _crlf = "\r\n"; - private readonly static AsciiString _eoh = "\r\n\r\n"; // End Of Headers - private readonly static AsciiString _http11OK = "HTTP/1.1 200 OK\r\n"; - private readonly static AsciiString _http11NotFound = "HTTP/1.1 404 Not Found\r\n"; - private readonly static AsciiString _headerServer = "Server: K"; - private readonly static AsciiString _headerContentLength = "Content-Length: "; - private readonly static AsciiString _headerContentLengthZero = "Content-Length: 0"; - private readonly static AsciiString _headerContentTypeText = "Content-Type: text/plain"; - private readonly static AsciiString _headerContentTypeJson = "Content-Type: application/json"; - private readonly static AsciiString _headerContentTypeHtml = "Content-Type: text/html; charset=UTF-8"; - - private readonly static AsciiString _dbPreamble = - _http11OK + - _headerServer + _crlf + - _headerContentTypeJson + _crlf + - _headerContentLength; - - private readonly static AsciiString _plainTextBody = "Hello, World!"; + private static ReadOnlySpan _applicationName => "Kestrel Platform-Level Application"u8; + public static ReadOnlySpan ApplicationName => _applicationName; + + private static ReadOnlySpan _crlf => "\r\n"u8; + private static ReadOnlySpan _eoh => "\r\n\r\n"u8; // End Of Headers + private static ReadOnlySpan _http11OK => "HTTP/1.1 200 OK\r\n"u8; + private static ReadOnlySpan _http11NotFound => "HTTP/1.1 404 Not Found\r\n"u8; + private static ReadOnlySpan _headerServer => "Server: K"u8; + private static ReadOnlySpan _headerContentLength => "Content-Length: "u8; + private static ReadOnlySpan _headerContentLengthZero => "Content-Length: 0"u8; + private static ReadOnlySpan _headerContentTypeText => "Content-Type: text/plain"u8; + private static ReadOnlySpan _headerContentTypeJson => "Content-Type: application/json"u8; + private static ReadOnlySpan _headerContentTypeHtml => "Content-Type: text/html; charset=UTF-8"u8; + + private static ReadOnlySpan _dbPreamble => + "HTTP/1.1 200 OK\r\n"u8 + + "Server: K\r\n"u8 + + "Content-Type: application/json\r\n"u8 + + "Content-Length: "u8; + + private static ReadOnlySpan _plainTextBody => "Hello, World!"u8; private static readonly JsonContext SerializerContext = JsonContext.Default; @@ -46,12 +46,12 @@ private sealed partial class JsonContext : JsonSerializerContext { } - private readonly static AsciiString _fortunesTableStart = "Fortunes"; - private readonly static AsciiString _fortunesRowStart = ""; - private readonly static AsciiString _fortunesTableEnd = "
idmessage
"; - private readonly static AsciiString _fortunesColumn = ""; - private readonly static AsciiString _fortunesRowEnd = "
"; - private readonly static AsciiString _contentLengthGap = new string(' ', 4); + private static ReadOnlySpan _fortunesTableStart => "Fortunes"u8; + private static ReadOnlySpan _fortunesRowStart => ""u8; + private static ReadOnlySpan _fortunesTableEnd => "
idmessage
"u8; + private static ReadOnlySpan _fortunesColumn => ""u8; + private static ReadOnlySpan _fortunesRowEnd => "
"u8; + private static ReadOnlySpan _contentLengthGap => " "u8; #if DATABASE public static RawDb Db { get; set; } @@ -62,13 +62,13 @@ private sealed partial class JsonContext : JsonSerializerContext public static class Paths { - public readonly static AsciiString Json = "/json"; - public readonly static AsciiString Plaintext = "/plaintext"; - public readonly static AsciiString SingleQuery = "/db"; - public readonly static AsciiString Fortunes = "/fortunes"; - public readonly static AsciiString Updates = "/updates/"; - public readonly static AsciiString MultipleQueries = "/queries/"; - public readonly static AsciiString Caching = "/cached-worlds/"; + public static ReadOnlySpan Json => "/json"u8; + public static ReadOnlySpan Plaintext => "/plaintext"u8; + public static ReadOnlySpan SingleQuery => "/db"u8; + public static ReadOnlySpan Fortunes => "/fortunes"u8; + public static ReadOnlySpan Updates => "/updates/"u8; + public static ReadOnlySpan MultipleQueries => "/queries/"u8; + public static ReadOnlySpan Caching => "/cached-worlds/"u8; } private RequestType _requestType; @@ -169,11 +169,11 @@ private static Task Default(PipeWriter pipeWriter) return Task.CompletedTask; } #endif - private readonly static AsciiString _defaultPreamble = - _http11NotFound + - _headerServer + _crlf + - _headerContentTypeText + _crlf + - _headerContentLengthZero; + private static ReadOnlySpan _defaultPreamble => + "HTTP/1.1 200 OK\r\n"u8 + + "Server: K"u8 + "\r\n"u8 + + "Content-Type: text/plain"u8 + + "Content-Length: 0"u8; private static void Default(ref BufferWriter writer) { diff --git a/frameworks/CSharp/aspnetcore/PlatformBenchmarks/Data/CachedWorld.cs b/frameworks/CSharp/aspnetcore/PlatformBenchmarks/Data/CachedWorld.cs index 61910b95587..fc59d5c17f0 100644 --- a/frameworks/CSharp/aspnetcore/PlatformBenchmarks/Data/CachedWorld.cs +++ b/frameworks/CSharp/aspnetcore/PlatformBenchmarks/Data/CachedWorld.cs @@ -9,5 +9,5 @@ public sealed class CachedWorld public int RandomNumber { get; set; } - public static implicit operator CachedWorld(World world) => new CachedWorld { Id = world.Id, RandomNumber = world.RandomNumber }; + public static implicit operator CachedWorld(World world) => new() { Id = world.Id, RandomNumber = world.RandomNumber }; } diff --git a/frameworks/CSharp/aspnetcore/PlatformBenchmarks/DateHeader.cs b/frameworks/CSharp/aspnetcore/PlatformBenchmarks/DateHeader.cs index 9e768ad1f53..e582787bbd7 100644 --- a/frameworks/CSharp/aspnetcore/PlatformBenchmarks/DateHeader.cs +++ b/frameworks/CSharp/aspnetcore/PlatformBenchmarks/DateHeader.cs @@ -57,9 +57,7 @@ private static void SetDateValues(DateTimeOffset value) throw new Exception("date time format failed"); } Debug.Assert(written == dateTimeRLength); - var temp = s_headerBytesMaster; - s_headerBytesMaster = s_headerBytesScratch; - s_headerBytesScratch = temp; + (s_headerBytesScratch, s_headerBytesMaster) = (s_headerBytesMaster, s_headerBytesScratch); } } } diff --git a/frameworks/CSharp/aspnetcore/PlatformBenchmarks/PlatformBenchmarks.csproj b/frameworks/CSharp/aspnetcore/PlatformBenchmarks/PlatformBenchmarks.csproj index 864d57f1676..951819f4c3a 100644 --- a/frameworks/CSharp/aspnetcore/PlatformBenchmarks/PlatformBenchmarks.csproj +++ b/frameworks/CSharp/aspnetcore/PlatformBenchmarks/PlatformBenchmarks.csproj @@ -1,9 +1,10 @@  - net6.0 + net7.0 Exe true enable + true diff --git a/frameworks/CSharp/aspnetcore/PlatformBenchmarks/Program.cs b/frameworks/CSharp/aspnetcore/PlatformBenchmarks/Program.cs index d684abb40e8..c47f2d3b679 100644 --- a/frameworks/CSharp/aspnetcore/PlatformBenchmarks/Program.cs +++ b/frameworks/CSharp/aspnetcore/PlatformBenchmarks/Program.cs @@ -2,6 +2,7 @@ // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. using System.Runtime.InteropServices; +using System.Text; namespace PlatformBenchmarks; @@ -13,15 +14,15 @@ public static async Task Main(string[] args) { Args = args; - Console.WriteLine(BenchmarkApplication.ApplicationName); + Console.WriteLine(Encoding.UTF8.GetString(BenchmarkApplication.ApplicationName)); #if !DATABASE - Console.WriteLine(BenchmarkApplication.Paths.Plaintext); - Console.WriteLine(BenchmarkApplication.Paths.Json); + Console.WriteLine(Encoding.UTF8.GetString(BenchmarkApplication.Paths.Plaintext)); + Console.WriteLine(Encoding.UTF8.GetString(BenchmarkApplication.Paths.Json)); #else - Console.WriteLine(BenchmarkApplication.Paths.Fortunes); - Console.WriteLine(BenchmarkApplication.Paths.SingleQuery); - Console.WriteLine(BenchmarkApplication.Paths.Updates); - Console.WriteLine(BenchmarkApplication.Paths.MultipleQueries); + Console.WriteLine(Encoding.UTF8.GetString(BenchmarkApplication.Paths.Fortunes)); + Console.WriteLine(Encoding.UTF8.GetString(BenchmarkApplication.Paths.SingleQuery)); + Console.WriteLine(Encoding.UTF8.GetString(BenchmarkApplication.Paths.Updates)); + Console.WriteLine(Encoding.UTF8.GetString(BenchmarkApplication.Paths.MultipleQueries)); #endif DateHeader.SyncDateTimer(); diff --git a/frameworks/CSharp/aspnetcore/aspcore-ado-my.dockerfile b/frameworks/CSharp/aspnetcore/aspcore-ado-my.dockerfile index 3cdaa161421..d9e34c43f69 100644 --- a/frameworks/CSharp/aspnetcore/aspcore-ado-my.dockerfile +++ b/frameworks/CSharp/aspnetcore/aspcore-ado-my.dockerfile @@ -1,9 +1,9 @@ -FROM mcr.microsoft.com/dotnet/sdk:6.0.100 AS build +FROM mcr.microsoft.com/dotnet/sdk:7.0.100 AS build WORKDIR /app COPY PlatformBenchmarks . RUN dotnet publish -c Release -o out /p:DatabaseProvider=MySqlConnector -FROM mcr.microsoft.com/dotnet/aspnet:6.0.0 AS runtime +FROM mcr.microsoft.com/dotnet/aspnet:7.0.0 AS runtime ENV ASPNETCORE_URLS http://+:8080 # Full PGO diff --git a/frameworks/CSharp/aspnetcore/aspcore-ado-pg-up.dockerfile b/frameworks/CSharp/aspnetcore/aspcore-ado-pg-up.dockerfile index f1c909b8f3a..ef3297a9aa1 100644 --- a/frameworks/CSharp/aspnetcore/aspcore-ado-pg-up.dockerfile +++ b/frameworks/CSharp/aspnetcore/aspcore-ado-pg-up.dockerfile @@ -1,9 +1,9 @@ -FROM mcr.microsoft.com/dotnet/sdk:6.0.100 AS build +FROM mcr.microsoft.com/dotnet/sdk:7.0.100 AS build WORKDIR /app COPY PlatformBenchmarks . RUN dotnet publish -c Release -o out /p:DatabaseProvider=Npgsql -FROM mcr.microsoft.com/dotnet/aspnet:6.0.0 AS runtime +FROM mcr.microsoft.com/dotnet/aspnet:7.0.0 AS runtime ENV ASPNETCORE_URLS http://+:8080 # Full PGO diff --git a/frameworks/CSharp/aspnetcore/aspcore-ado-pg.dockerfile b/frameworks/CSharp/aspnetcore/aspcore-ado-pg.dockerfile index d197b0a28da..63ddf4c2eeb 100644 --- a/frameworks/CSharp/aspnetcore/aspcore-ado-pg.dockerfile +++ b/frameworks/CSharp/aspnetcore/aspcore-ado-pg.dockerfile @@ -1,9 +1,9 @@ -FROM mcr.microsoft.com/dotnet/sdk:6.0.100 AS build +FROM mcr.microsoft.com/dotnet/sdk:7.0.100 AS build WORKDIR /app COPY PlatformBenchmarks . RUN dotnet publish -c Release -o out /p:DatabaseProvider=Npgsql -FROM mcr.microsoft.com/dotnet/aspnet:6.0.0 AS runtime +FROM mcr.microsoft.com/dotnet/aspnet:7.0.0 AS runtime ENV ASPNETCORE_URLS http://+:8080 # Full PGO diff --git a/frameworks/CSharp/aspnetcore/aspcore-mvc-ado-my.dockerfile b/frameworks/CSharp/aspnetcore/aspcore-mvc-ado-my.dockerfile index 6ef8811f9d1..2f9d6cef23d 100644 --- a/frameworks/CSharp/aspnetcore/aspcore-mvc-ado-my.dockerfile +++ b/frameworks/CSharp/aspnetcore/aspcore-mvc-ado-my.dockerfile @@ -1,9 +1,9 @@ -FROM mcr.microsoft.com/dotnet/sdk:6.0.100 AS build +FROM mcr.microsoft.com/dotnet/sdk:7.0.100 AS build WORKDIR /app COPY Benchmarks . RUN dotnet publish -c Release -o out -FROM mcr.microsoft.com/dotnet/aspnet:6.0.0 AS runtime +FROM mcr.microsoft.com/dotnet/aspnet:7.0.0 AS runtime ENV ASPNETCORE_URLS http://+:8080 # Full PGO diff --git a/frameworks/CSharp/aspnetcore/aspcore-mvc-ado-pg-up.dockerfile b/frameworks/CSharp/aspnetcore/aspcore-mvc-ado-pg-up.dockerfile index cb426c50006..49cd9671847 100644 --- a/frameworks/CSharp/aspnetcore/aspcore-mvc-ado-pg-up.dockerfile +++ b/frameworks/CSharp/aspnetcore/aspcore-mvc-ado-pg-up.dockerfile @@ -1,9 +1,9 @@ -FROM mcr.microsoft.com/dotnet/sdk:6.0.100 AS build +FROM mcr.microsoft.com/dotnet/sdk:7.0.100 AS build WORKDIR /app COPY Benchmarks . RUN dotnet publish -c Release -o out -FROM mcr.microsoft.com/dotnet/aspnet:6.0.0 AS runtime +FROM mcr.microsoft.com/dotnet/aspnet:7.0.0 AS runtime ENV ASPNETCORE_URLS http://+:8080 # Full PGO diff --git a/frameworks/CSharp/aspnetcore/aspcore-mvc-ado-pg.dockerfile b/frameworks/CSharp/aspnetcore/aspcore-mvc-ado-pg.dockerfile index f72002d3976..88aaae4e4b5 100644 --- a/frameworks/CSharp/aspnetcore/aspcore-mvc-ado-pg.dockerfile +++ b/frameworks/CSharp/aspnetcore/aspcore-mvc-ado-pg.dockerfile @@ -1,9 +1,9 @@ -FROM mcr.microsoft.com/dotnet/sdk:6.0.100 AS build +FROM mcr.microsoft.com/dotnet/sdk:7.0.100 AS build WORKDIR /app COPY Benchmarks . RUN dotnet publish -c Release -o out -FROM mcr.microsoft.com/dotnet/aspnet:6.0.0 AS runtime +FROM mcr.microsoft.com/dotnet/aspnet:7.0.0 AS runtime ENV ASPNETCORE_URLS http://+:8080 # Full PGO diff --git a/frameworks/CSharp/aspnetcore/aspcore-mvc-dap-my.dockerfile b/frameworks/CSharp/aspnetcore/aspcore-mvc-dap-my.dockerfile index 76e5651b0e7..460f7041203 100644 --- a/frameworks/CSharp/aspnetcore/aspcore-mvc-dap-my.dockerfile +++ b/frameworks/CSharp/aspnetcore/aspcore-mvc-dap-my.dockerfile @@ -1,9 +1,9 @@ -FROM mcr.microsoft.com/dotnet/sdk:6.0.100 AS build +FROM mcr.microsoft.com/dotnet/sdk:7.0.100 AS build WORKDIR /app COPY Benchmarks . RUN dotnet publish -c Release -o out -FROM mcr.microsoft.com/dotnet/aspnet:6.0.0 AS runtime +FROM mcr.microsoft.com/dotnet/aspnet:7.0.0 AS runtime ENV ASPNETCORE_URLS http://+:8080 # Full PGO diff --git a/frameworks/CSharp/aspnetcore/aspcore-mvc-dap-pg-up.dockerfile b/frameworks/CSharp/aspnetcore/aspcore-mvc-dap-pg-up.dockerfile index a650b43bb06..dc0e735d22f 100644 --- a/frameworks/CSharp/aspnetcore/aspcore-mvc-dap-pg-up.dockerfile +++ b/frameworks/CSharp/aspnetcore/aspcore-mvc-dap-pg-up.dockerfile @@ -1,9 +1,9 @@ -FROM mcr.microsoft.com/dotnet/sdk:6.0.100 AS build +FROM mcr.microsoft.com/dotnet/sdk:7.0.100 AS build WORKDIR /app COPY Benchmarks . RUN dotnet publish -c Release -o out -FROM mcr.microsoft.com/dotnet/aspnet:6.0.0 AS runtime +FROM mcr.microsoft.com/dotnet/aspnet:7.0.0 AS runtime ENV ASPNETCORE_URLS http://+:8080 # Full PGO diff --git a/frameworks/CSharp/aspnetcore/aspcore-mvc-dap-pg.dockerfile b/frameworks/CSharp/aspnetcore/aspcore-mvc-dap-pg.dockerfile index 6d16b107c51..4ab66ce7dc0 100644 --- a/frameworks/CSharp/aspnetcore/aspcore-mvc-dap-pg.dockerfile +++ b/frameworks/CSharp/aspnetcore/aspcore-mvc-dap-pg.dockerfile @@ -1,9 +1,9 @@ -FROM mcr.microsoft.com/dotnet/sdk:6.0.100 AS build +FROM mcr.microsoft.com/dotnet/sdk:7.0.100 AS build WORKDIR /app COPY Benchmarks . RUN dotnet publish -c Release -o out -FROM mcr.microsoft.com/dotnet/aspnet:6.0.0 AS runtime +FROM mcr.microsoft.com/dotnet/aspnet:7.0.0 AS runtime ENV ASPNETCORE_URLS http://+:8080 # Full PGO diff --git a/frameworks/CSharp/aspnetcore/aspcore-mvc-ef-pg.dockerfile b/frameworks/CSharp/aspnetcore/aspcore-mvc-ef-pg.dockerfile index 3a16dee60b8..d972d3f4f0a 100644 --- a/frameworks/CSharp/aspnetcore/aspcore-mvc-ef-pg.dockerfile +++ b/frameworks/CSharp/aspnetcore/aspcore-mvc-ef-pg.dockerfile @@ -1,9 +1,9 @@ -FROM mcr.microsoft.com/dotnet/sdk:6.0.100 AS build +FROM mcr.microsoft.com/dotnet/sdk:7.0.100 AS build WORKDIR /app COPY Benchmarks . RUN dotnet publish -c Release -o out -FROM mcr.microsoft.com/dotnet/aspnet:6.0.0 AS runtime +FROM mcr.microsoft.com/dotnet/aspnet:7.0.0 AS runtime ENV ASPNETCORE_URLS http://+:8080 # Full PGO diff --git a/frameworks/CSharp/aspnetcore/aspcore-mvc.dockerfile b/frameworks/CSharp/aspnetcore/aspcore-mvc.dockerfile index e2e5fb7f7f1..c02dc68281a 100644 --- a/frameworks/CSharp/aspnetcore/aspcore-mvc.dockerfile +++ b/frameworks/CSharp/aspnetcore/aspcore-mvc.dockerfile @@ -1,9 +1,9 @@ -FROM mcr.microsoft.com/dotnet/sdk:6.0.100 AS build +FROM mcr.microsoft.com/dotnet/sdk:7.0.100 AS build WORKDIR /app COPY Benchmarks . RUN dotnet publish -c Release -o out -FROM mcr.microsoft.com/dotnet/aspnet:6.0.0 AS runtime +FROM mcr.microsoft.com/dotnet/aspnet:7.0.0 AS runtime ENV ASPNETCORE_URLS http://+:8080 # Full PGO diff --git a/frameworks/CSharp/aspnetcore/aspcore-mw-ado-my.dockerfile b/frameworks/CSharp/aspnetcore/aspcore-mw-ado-my.dockerfile index f3a96a54ae5..1648f0d6223 100644 --- a/frameworks/CSharp/aspnetcore/aspcore-mw-ado-my.dockerfile +++ b/frameworks/CSharp/aspnetcore/aspcore-mw-ado-my.dockerfile @@ -1,9 +1,9 @@ -FROM mcr.microsoft.com/dotnet/sdk:6.0.100 AS build +FROM mcr.microsoft.com/dotnet/sdk:7.0.100 AS build WORKDIR /app COPY Benchmarks . RUN dotnet publish -c Release -o out -FROM mcr.microsoft.com/dotnet/aspnet:6.0.0 AS runtime +FROM mcr.microsoft.com/dotnet/aspnet:7.0.0 AS runtime ENV ASPNETCORE_URLS http://+:8080 # Full PGO diff --git a/frameworks/CSharp/aspnetcore/aspcore-mw-ado-pg-up.dockerfile b/frameworks/CSharp/aspnetcore/aspcore-mw-ado-pg-up.dockerfile index c514f7acabf..a217244bfea 100644 --- a/frameworks/CSharp/aspnetcore/aspcore-mw-ado-pg-up.dockerfile +++ b/frameworks/CSharp/aspnetcore/aspcore-mw-ado-pg-up.dockerfile @@ -1,9 +1,9 @@ -FROM mcr.microsoft.com/dotnet/sdk:6.0.100 AS build +FROM mcr.microsoft.com/dotnet/sdk:7.0.100 AS build WORKDIR /app COPY Benchmarks . RUN dotnet publish -c Release -o out -FROM mcr.microsoft.com/dotnet/aspnet:6.0.0 AS runtime +FROM mcr.microsoft.com/dotnet/aspnet:7.0.0 AS runtime ENV ASPNETCORE_URLS http://+:8080 # Full PGO diff --git a/frameworks/CSharp/aspnetcore/aspcore-mw-ado-pg.dockerfile b/frameworks/CSharp/aspnetcore/aspcore-mw-ado-pg.dockerfile index 29461717b13..43380a14e32 100644 --- a/frameworks/CSharp/aspnetcore/aspcore-mw-ado-pg.dockerfile +++ b/frameworks/CSharp/aspnetcore/aspcore-mw-ado-pg.dockerfile @@ -1,9 +1,9 @@ -FROM mcr.microsoft.com/dotnet/sdk:6.0.100 AS build +FROM mcr.microsoft.com/dotnet/sdk:7.0.100 AS build WORKDIR /app COPY Benchmarks . RUN dotnet publish -c Release -o out -FROM mcr.microsoft.com/dotnet/aspnet:6.0.0 AS runtime +FROM mcr.microsoft.com/dotnet/aspnet:7.0.0 AS runtime ENV ASPNETCORE_URLS http://+:8080 # Full PGO diff --git a/frameworks/CSharp/aspnetcore/aspcore-mw-dap-my.dockerfile b/frameworks/CSharp/aspnetcore/aspcore-mw-dap-my.dockerfile index eb26af890d9..d97decf292a 100644 --- a/frameworks/CSharp/aspnetcore/aspcore-mw-dap-my.dockerfile +++ b/frameworks/CSharp/aspnetcore/aspcore-mw-dap-my.dockerfile @@ -1,9 +1,9 @@ -FROM mcr.microsoft.com/dotnet/sdk:6.0.100 AS build +FROM mcr.microsoft.com/dotnet/sdk:7.0.100 AS build WORKDIR /app COPY Benchmarks . RUN dotnet publish -c Release -o out -FROM mcr.microsoft.com/dotnet/aspnet:6.0.0 AS runtime +FROM mcr.microsoft.com/dotnet/aspnet:7.0.0 AS runtime ENV ASPNETCORE_URLS http://+:8080 # Full PGO diff --git a/frameworks/CSharp/aspnetcore/aspcore-mw-dap-pg-up.dockerfile b/frameworks/CSharp/aspnetcore/aspcore-mw-dap-pg-up.dockerfile index ce55a85ce0d..178256f5e0f 100644 --- a/frameworks/CSharp/aspnetcore/aspcore-mw-dap-pg-up.dockerfile +++ b/frameworks/CSharp/aspnetcore/aspcore-mw-dap-pg-up.dockerfile @@ -1,9 +1,9 @@ -FROM mcr.microsoft.com/dotnet/sdk:6.0.100 AS build +FROM mcr.microsoft.com/dotnet/sdk:7.0.100 AS build WORKDIR /app COPY Benchmarks . RUN dotnet publish -c Release -o out -FROM mcr.microsoft.com/dotnet/aspnet:6.0.0 AS runtime +FROM mcr.microsoft.com/dotnet/aspnet:7.0.0 AS runtime ENV ASPNETCORE_URLS http://+:8080 # Full PGO diff --git a/frameworks/CSharp/aspnetcore/aspcore-mw-dap-pg.dockerfile b/frameworks/CSharp/aspnetcore/aspcore-mw-dap-pg.dockerfile index 7b77884fbac..8b2cf7fb26a 100644 --- a/frameworks/CSharp/aspnetcore/aspcore-mw-dap-pg.dockerfile +++ b/frameworks/CSharp/aspnetcore/aspcore-mw-dap-pg.dockerfile @@ -1,9 +1,9 @@ -FROM mcr.microsoft.com/dotnet/sdk:6.0.100 AS build +FROM mcr.microsoft.com/dotnet/sdk:7.0.100 AS build WORKDIR /app COPY Benchmarks . RUN dotnet publish -c Release -o out -FROM mcr.microsoft.com/dotnet/aspnet:6.0.0 AS runtime +FROM mcr.microsoft.com/dotnet/aspnet:7.0.0 AS runtime ENV ASPNETCORE_URLS http://+:8080 # Full PGO diff --git a/frameworks/CSharp/aspnetcore/aspcore-mw-ef-pg.dockerfile b/frameworks/CSharp/aspnetcore/aspcore-mw-ef-pg.dockerfile index bfa09e592e7..875a9045a44 100644 --- a/frameworks/CSharp/aspnetcore/aspcore-mw-ef-pg.dockerfile +++ b/frameworks/CSharp/aspnetcore/aspcore-mw-ef-pg.dockerfile @@ -1,9 +1,9 @@ -FROM mcr.microsoft.com/dotnet/sdk:6.0.100 AS build +FROM mcr.microsoft.com/dotnet/sdk:7.0.100 AS build WORKDIR /app COPY Benchmarks . RUN dotnet publish -c Release -o out -FROM mcr.microsoft.com/dotnet/aspnet:6.0.0 AS runtime +FROM mcr.microsoft.com/dotnet/aspnet:7.0.0 AS runtime ENV ASPNETCORE_URLS http://+:8080 # Full PGO diff --git a/frameworks/CSharp/aspnetcore/aspcore-mw-json.dockerfile b/frameworks/CSharp/aspnetcore/aspcore-mw-json.dockerfile index 67096993685..113babbc939 100644 --- a/frameworks/CSharp/aspnetcore/aspcore-mw-json.dockerfile +++ b/frameworks/CSharp/aspnetcore/aspcore-mw-json.dockerfile @@ -1,9 +1,9 @@ -FROM mcr.microsoft.com/dotnet/sdk:6.0.100 AS build +FROM mcr.microsoft.com/dotnet/sdk:7.0.100 AS build WORKDIR /app COPY Benchmarks . RUN dotnet publish -c Release -o out -FROM mcr.microsoft.com/dotnet/aspnet:6.0.0 AS runtime +FROM mcr.microsoft.com/dotnet/aspnet:7.0.0 AS runtime ENV ASPNETCORE_URLS http://+:8080 # Full PGO diff --git a/frameworks/CSharp/aspnetcore/aspcore-mw.dockerfile b/frameworks/CSharp/aspnetcore/aspcore-mw.dockerfile index 0eb81c500af..4c2b45199ce 100644 --- a/frameworks/CSharp/aspnetcore/aspcore-mw.dockerfile +++ b/frameworks/CSharp/aspnetcore/aspcore-mw.dockerfile @@ -1,9 +1,9 @@ -FROM mcr.microsoft.com/dotnet/sdk:6.0.100 AS build +FROM mcr.microsoft.com/dotnet/sdk:7.0.100 AS build WORKDIR /app COPY Benchmarks . RUN dotnet publish -c Release -o out -FROM mcr.microsoft.com/dotnet/aspnet:6.0.0 AS runtime +FROM mcr.microsoft.com/dotnet/aspnet:7.0.0 AS runtime ENV ASPNETCORE_URLS http://+:8080 # Full PGO diff --git a/frameworks/CSharp/aspnetcore/aspcore.dockerfile b/frameworks/CSharp/aspnetcore/aspcore.dockerfile index ef309958311..e7b1aaa550e 100644 --- a/frameworks/CSharp/aspnetcore/aspcore.dockerfile +++ b/frameworks/CSharp/aspnetcore/aspcore.dockerfile @@ -1,9 +1,9 @@ -FROM mcr.microsoft.com/dotnet/sdk:6.0.100 AS build +FROM mcr.microsoft.com/dotnet/sdk:7.0.100 AS build WORKDIR /app COPY PlatformBenchmarks . RUN dotnet publish -c Release -o out -FROM mcr.microsoft.com/dotnet/aspnet:6.0.0 AS runtime +FROM mcr.microsoft.com/dotnet/aspnet:7.0.0 AS runtime ENV ASPNETCORE_URLS http://+:8080 ENV DOTNET_SYSTEM_NET_SOCKETS_INLINE_COMPLETIONS 1