在ASP.net页面中嵌入SVG

fly*_*sch 6 asp.net asp.net-mvc svg razor

我想将svg直接嵌入到我的ASP.net-MVC视图中,以便输出看起来像这样:

<html>
    <body>
        <svg> ... </svg>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

使用PHP我会这样做:

<? include('image.svg'); ?>
Run Code Online (Sandbox Code Playgroud)

我试过@Html.Partial('image.svg')但是错了.有没有办法解决这个或我可以尝试的另一种方法?

Ale*_*zzo 17

重命名SVG文件和使用Html.Partial应该做的伎俩,但我不喜欢重命名文件,以实现它.因此,通过这种方式,您可以保持文件不变.

@Html.Raw(File.ReadAllText(Server.MapPath("~/image.svg")))
Run Code Online (Sandbox Code Playgroud)


小智 8

将SVG嵌入到cshtml视图文件而不是.svg文件中,然后您应该能够使用@ Html.Partial来渲染它.

然后你的部分看起来像

@Html.Partial("~/Views/pathtosvg/svg.cshtml")

  • 这不是最好的解决方案。如果您有+200个SVG文件怎么办?您要重命名它们并保留两者的副本吗?也许可以通过在gulp中创建一些任务来完成,但是在我看来,必须有一个更好的解决方案 (3认同)