diff --git a/src/SignalR/clients/csharp/Client.Core/ref/Microsoft.AspNetCore.SignalR.Client.Core.csproj b/src/SignalR/clients/csharp/Client.Core/ref/Microsoft.AspNetCore.SignalR.Client.Core.csproj
index fbfef8ba997b..a3f841dd7f5b 100644
--- a/src/SignalR/clients/csharp/Client.Core/ref/Microsoft.AspNetCore.SignalR.Client.Core.csproj
+++ b/src/SignalR/clients/csharp/Client.Core/ref/Microsoft.AspNetCore.SignalR.Client.Core.csproj
@@ -1,7 +1,7 @@
- netstandard2.0
+ netstandard2.0;netcoreapp3.0
@@ -11,4 +11,12 @@
+
+
+
+
+
+
+
+
diff --git a/src/SignalR/clients/csharp/Client.Core/ref/Microsoft.AspNetCore.SignalR.Client.Core.netcoreapp3.0.cs b/src/SignalR/clients/csharp/Client.Core/ref/Microsoft.AspNetCore.SignalR.Client.Core.netcoreapp3.0.cs
new file mode 100644
index 000000000000..facbb2b77379
--- /dev/null
+++ b/src/SignalR/clients/csharp/Client.Core/ref/Microsoft.AspNetCore.SignalR.Client.Core.netcoreapp3.0.cs
@@ -0,0 +1,165 @@
+// 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.
+
+namespace Microsoft.AspNetCore.Internal
+{
+ public static partial class AwaitableThreadPool
+ {
+ public static Microsoft.AspNetCore.Internal.AwaitableThreadPool.Awaitable Yield() { throw null; }
+ [System.Runtime.InteropServices.StructLayoutAttribute(System.Runtime.InteropServices.LayoutKind.Sequential, Size=1)]
+ public readonly partial struct Awaitable : System.Runtime.CompilerServices.ICriticalNotifyCompletion, System.Runtime.CompilerServices.INotifyCompletion
+ {
+ public bool IsCompleted { get { throw null; } }
+ public Microsoft.AspNetCore.Internal.AwaitableThreadPool.Awaitable GetAwaiter() { throw null; }
+ public void GetResult() { }
+ public void OnCompleted(System.Action continuation) { }
+ public void UnsafeOnCompleted(System.Action continuation) { }
+ }
+ }
+}
+namespace Microsoft.AspNetCore.SignalR.Client
+{
+ public partial class HubConnection
+ {
+ public static readonly System.TimeSpan DefaultHandshakeTimeout;
+ public static readonly System.TimeSpan DefaultKeepAliveInterval;
+ public static readonly System.TimeSpan DefaultServerTimeout;
+ public HubConnection(Microsoft.AspNetCore.SignalR.Client.IConnectionFactory connectionFactory, Microsoft.AspNetCore.SignalR.Protocol.IHubProtocol protocol, Microsoft.Extensions.Logging.ILoggerFactory loggerFactory) { }
+ public HubConnection(Microsoft.AspNetCore.SignalR.Client.IConnectionFactory connectionFactory, Microsoft.AspNetCore.SignalR.Protocol.IHubProtocol protocol, System.IServiceProvider serviceProvider, Microsoft.Extensions.Logging.ILoggerFactory loggerFactory) { }
+ public string ConnectionId { get { throw null; } }
+ public System.TimeSpan HandshakeTimeout { [System.Runtime.CompilerServices.CompilerGeneratedAttribute]get { throw null; } [System.Runtime.CompilerServices.CompilerGeneratedAttribute]set { } }
+ public System.TimeSpan KeepAliveInterval { [System.Runtime.CompilerServices.CompilerGeneratedAttribute]get { throw null; } [System.Runtime.CompilerServices.CompilerGeneratedAttribute]set { } }
+ public System.TimeSpan ServerTimeout { [System.Runtime.CompilerServices.CompilerGeneratedAttribute]get { throw null; } [System.Runtime.CompilerServices.CompilerGeneratedAttribute]set { } }
+ public Microsoft.AspNetCore.SignalR.Client.HubConnectionState State { get { throw null; } }
+ public event System.Func Closed { add { } remove { } }
+ [System.Diagnostics.DebuggerStepThroughAttribute]
+ public System.Threading.Tasks.Task DisposeAsync() { throw null; }
+ [System.Diagnostics.DebuggerStepThroughAttribute]
+ public System.Threading.Tasks.Task