.net核心API中有一个方法,该方法使用HTM1到PDF的转换Nuget包从HTML字符串创建PDF文件。要生成PDF,我只需创建一个html字符串,然后将其传递到转换库中的方法中即可。
在.net 4.5中,我可以通过执行以下操作在此HTMl字符串中包含CSS文件(其中变量“ html”是要显示的输入):
htmlToConvert = "<html class='mdzr--svg'><head>" +
HttpUtility.HtmlDecode(Styles.Render("~/Content/css").ToHtmlString()) +
"</head><body>" + html +
"</body></html>";
我现在正在尝试在.net核心中做类似的事情,但由于Styles.Render功能不相同,因此我在如何呈现CSS文件方面苦苦挣扎。
我打算将CSS文件放在API的wwwroot中。
关于如何访问它并将其呈现为链接元素的任何建议都很棒。
谢谢!
答案 0 :(得分:0)
根据the documentation,在ASP.NET Core MVC 2.1中执行此操作的方法是配置WebHost.CreateDefaultBuilder
方法以设置项目的根目录(在他们的示例中为当前目录;我相信默认值为全新ASP.NET Core MVC项目中的wwwroot
目录):
Program.cs
public class Program
{
public static void Main(string[] args)
{
CreateWebHostBuilder(args).Build().Run();
}
public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>();
}
然后,将应用程序配置为在启动时使用静态文件:
Startup.cs
public void Configure(IApplicationBuilder app)
{
app.UseStaticFiles();
}
然后,您可以像在普通HTML文档中一样使用<img>
,<script>
和<link>
标签。
可通过上面的文档链接获得更多高级选项。