我想使用TopShelf将我的blazor应用程序作为服务运行,但现在我已经配置了一个服务,我丢失了所有css。它仍然像应该的那样使用Startup,但它只是没有加载我的css?这只是路径的问题吗?还是别的东西?
我没有对Startup类做任何更改。
我的主菜:
public static void Main(string[] args)
{
var exitCode = HostFactory.Run(x =>
{
x.Service(() => new Service(args));
x.SetServiceName("Print");
x.SetDescription("service");
x.StartAutomaticallyDelayed();
});
Environment.ExitCode = (int)Convert.ChangeType(exitCode, exitCode.GetTypeCode());
}
我的服务:
public bool Start(HostControl hostControl)
{
Configuration.Settings settings = Program.initSettings();
new Task(() => CreateWebHostBuilder(args)
.UseKestrel()
.UseContentRoot(Directory.GetCurrentDirectory())
.UseIISIntegration()
.UseStartup<Startup>()
.UseStaticWebAssets()
.UseUrls(settings.BaseAddress)
.Build().Run()).Start();
return true;
}
public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.ConfigureLogging(logging =>
{
logging.ClearProviders();
logging.AddConsole();
});
//.UseStartup<Startup>();
}
所以经过一番尝试和错误之后,我发现这是一个愚蠢的错误。我没有将css文件的属性更改为复制到输出目录。现在正在加载我的css。