Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在'cshtml'中与RazorEngine一起使用外部CSS_Css_Razor_Asp.net Core 2.0_Razorengine - Fatal编程技术网

在'cshtml'中与RazorEngine一起使用外部CSS

在'cshtml'中与RazorEngine一起使用外部CSS,css,razor,asp.net-core-2.0,razorengine,Css,Razor,Asp.net Core 2.0,Razorengine,我想在我的cshtml文件中使用外部和内部CSS 我在这里使用编译器 如果我尝试在不添加外部CSS的情况下运行,那么它工作得很好。但当我尝试添加外部CSS时,它抛出了下面提到的错误: RazorEngine.Templating.TemplateCompliationException:'错误,而 编译模板。请尝试以下方法来解决此情况: *如果问题与缺少/无效引用或多个定义有关,请尝试加载 手动(在编译appdomain中!)或 通过提供自己的IReferenceResolver实现手动指定引用

我想在我的cshtml文件中使用外部和内部CSS

我在这里使用编译器

如果我尝试在不添加外部CSS的情况下运行,那么它工作得很好。但当我尝试添加外部CSS时,它抛出了下面提到的错误:

RazorEngine.Templating.TemplateCompliationException:'错误,而 编译模板。请尝试以下方法来解决此情况: *如果问题与缺少/无效引用或多个定义有关,请尝试加载 手动(在编译appdomain中!)或 通过提供自己的IReferenceResolver实现手动指定引用。 有关详细信息,请参阅。 目前,所有引用都必须作为文件提供!*如果获取的“类”不包含“成员”的定义: 尝试其他模型类型(例如“null”使模型成为动态的)。 注意:不能使用typeof(dynamic)使模型成为动态的! 或者尝试使用静态类型而不是匿名/动态类型。有关错误的更多详细信息: -错误:(17,29)名称“Url”在当前上下文中不存在。可以在(请 删除文件夹): C:\Users\pratik.soni\AppData\Local\Temp\RazorEngine\u d253hedw.3b5 我们试图编译的模板是: -------------开始-----------model DRC.DTO.EFiling.NewEFilingDeclarationModel;

CSHTML文件如下所示:

@model DRC.DTO.EFiling.NewEFilingDeclarationModel;
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=\, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <link href="@Url.Content("~/wwwroot/CSS/StyleSheet.css")" rel="stylesheet" />
</head>
<body class="bg-gray">
    <h2 class="h2">VAT e-Filing</h2>
    <div class="bg-white">
        <div class="">
public string CompileTemplate(string templatePath, string name, object model)
        {
            string rootPath = _env.ContentRootPath;
            string fullPath = Path.Combine(rootPath, templatePath, name).ToString();
            string templateSource = File.ReadAllText(fullPath);

            string templateString;
            if (Engine.Razor.IsTemplateCached(name, model.GetType()))
            {
                templateString = Engine.Razor.Run(name, model.GetType(), model);
            }
            else
            {
                templateString = Engine.Razor.RunCompile(templateSource, name, model.GetType(), model); //**GETTING ERROR ON THIS LINE**
            }

            return templateString;
        }
样式表.css

body {
}

.h2 {
    color: blue;
    margin-left: 20px;
}

UrlHelper
仅存在于请求的上下文中。您正在请求管道之外呈现视图,因此未定义
Url
。然而,无论如何,你并不真的需要它;您应该能够将代码更改为:

<link href="~/wwwroot/CSS/StyleSheet.css" rel="stylesheet" />


是的,它正在解决问题。但不幸的是,它没有将外部CSS应用于PDF。当生成PDF时,外部链接不会真正起作用。这在很大程度上取决于您正在使用的库,但通常会提供一种包含外部CSS的方法,而不是在文档本身中引用它。