我想在现有的Service Fabric集群中添加一个新的.NET Core RC2 MVC应用程序,但我无法弄清楚应该如何做到这一点。
我看了几个RC1的例子,但这也没有让我更进一步。 我知道您需要在ServiceManifest.xml文件中添加EntryPoint。 但在RC1示例中,它们指向已在RC2中删除的dnx.exe:
<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>
我应该在RC2版本的.NET Core中使用哪个EntryPoint?
谢谢!
答案 0 :(得分:5)
查看此公告:
如您所见,带有RC2的ASP.NET Core应用程序成为控制台应用程序。
也就是说,您的入口点是您的ASP.NET核心控制台应用程序编译出来的EXE。
因此,依靠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>
答案 1 :(得分:0)
正如我在评论中提到的那样,它不一定是控制台应用程序。看看https://github.com/weidazhao/Hosting
克隆它并看到SmsService和CounterService的项目是ASP.NET Core 1.0 RC2项目。