Service Fabric 中的 .NET Core RC2
.NET Core RC2 in Service Fabric
我想将新的 .NET Core RC2 MVC 应用程序添加到现有的 Service Fabric 集群,但我不知道该怎么做。
我看过几个 RC1 示例,但这也没有让我更进一步。
我了解到您需要在 ServiceManifest.xml 文件中添加一个 EntryPoint。
但在 RC1 示例中,它们指向 dnx.exe,已在 RC2 中删除:
<EntryPoint>
<ExeHost>
<Program>approot\runtimes\dnx-clr-win-x64.1.0.0-rc1-update1\bin\dnx.exe</Program>
<Arguments>--appbase approot\src\ChatWeb Microsoft.Dnx.ApplicationHost Microsoft.ServiceFabric.AspNet.Hosting --server Microsoft.AspNet.Server.WebListener</Arguments>
<WorkingFolder>CodePackage</WorkingFolder>
<ConsoleRedirection FileRetentionCount="5" FileMaxSizeInKb="2048" />
</ExeHost>
</EntryPoint>
我应该在 .NET Core 的 RC2 版本中使用什么入口点?
谢谢!
查看此公告:
如您所见,带有 RC2 的 ASP.NET 核心应用程序变成了控制台应用程序。
也就是说,您的入口点是您的 EXE,它来自您的 ASP.NET 核心控制台应用程序的编译。
因此,与其依靠 DNX 从您的 Startup.cs 中获取 Main 方法,不如在 Program.cs 中设置您的工具链,然后构建一个 Service Fabric 将用于 Entry 的 EXE。
public class Program
{
public static void Main(string[] args)
{
var host = new WebHostBuilder()
.UseKestrel()
.UseStartup<Startup>()
.Build();
host.Run();
}
}
所以你的清单应该是这样的:
<EntryPoint>
<ExeHost>
<Program>YourApp.Exe</Program>
</ExeHost>
</EntryPoint>
正如我在评论中提到的,它不一定是控制台应用程序。看看https://github.com/weidazhao/Hosting
克隆一下,发现SmsService和CounterService的工程是ASP.NETCore 1.0 RC2工程
我想将新的 .NET Core RC2 MVC 应用程序添加到现有的 Service Fabric 集群,但我不知道该怎么做。
我看过几个 RC1 示例,但这也没有让我更进一步。 我了解到您需要在 ServiceManifest.xml 文件中添加一个 EntryPoint。 但在 RC1 示例中,它们指向 dnx.exe,已在 RC2 中删除:
<EntryPoint>
<ExeHost>
<Program>approot\runtimes\dnx-clr-win-x64.1.0.0-rc1-update1\bin\dnx.exe</Program>
<Arguments>--appbase approot\src\ChatWeb Microsoft.Dnx.ApplicationHost Microsoft.ServiceFabric.AspNet.Hosting --server Microsoft.AspNet.Server.WebListener</Arguments>
<WorkingFolder>CodePackage</WorkingFolder>
<ConsoleRedirection FileRetentionCount="5" FileMaxSizeInKb="2048" />
</ExeHost>
</EntryPoint>
我应该在 .NET Core 的 RC2 版本中使用什么入口点?
谢谢!
查看此公告:
如您所见,带有 RC2 的 ASP.NET 核心应用程序变成了控制台应用程序。
也就是说,您的入口点是您的 EXE,它来自您的 ASP.NET 核心控制台应用程序的编译。
因此,与其依靠 DNX 从您的 Startup.cs 中获取 Main 方法,不如在 Program.cs 中设置您的工具链,然后构建一个 Service Fabric 将用于 Entry 的 EXE。
public class Program
{
public static void Main(string[] args)
{
var host = new WebHostBuilder()
.UseKestrel()
.UseStartup<Startup>()
.Build();
host.Run();
}
}
所以你的清单应该是这样的:
<EntryPoint>
<ExeHost>
<Program>YourApp.Exe</Program>
</ExeHost>
</EntryPoint>
正如我在评论中提到的,它不一定是控制台应用程序。看看https://github.com/weidazhao/Hosting
克隆一下,发现SmsService和CounterService的工程是ASP.NETCore 1.0 RC2工程