我想嵌入SVG直接進入我的ASP.net MVC的視圖,使輸出看起來是這樣的:嵌入SVG在ASP.net頁面
<html>
<body>
<svg> ... </svg>
</body>
</html>
使用PHP,我會做這個,像這樣:
<? include('image.svg'); ?>
我試過@Html.Partial('image.svg')
但出現錯誤。有沒有辦法解決這個或我可以嘗試的另一種方法?
我想嵌入SVG直接進入我的ASP.net MVC的視圖,使輸出看起來是這樣的:嵌入SVG在ASP.net頁面
<html>
<body>
<svg> ... </svg>
</body>
</html>
使用PHP,我會做這個,像這樣:
<? include('image.svg'); ?>
我試過@Html.Partial('image.svg')
但出現錯誤。有沒有辦法解決這個或我可以嘗試的另一種方法?
嵌入SVG的成CSHTML視圖文件,而不是一個.svg文件,那麼你就應該能夠使用@ Html.Partial來渲染它。
你的部分則看起來像
@Html.Partial("~/Views/pathtosvg/svg.cshtml")
你可以使用文件包括相同的PHP文件?
例子:
<!--#include file="image.svg"-->
這句法應的工作方式與PHP的包括,但asp.net
這只是服務於瀏覽器的html評論: - \ – flyingfisch
這應該包括在asp.net中的文件,我剛纔試過了。這是在這裏解釋:http://www.w3schools.com/asp/asp_incfiles.asp –
也許它不適用於MVC和剃鬚刀? – flyingfisch
重命名SVG文件,並使用Html.Partial應該做的伎倆,但我不喜歡是爲了實現它重命名文件。所以,這樣,你可以保持你的文件原樣。
@Html.Raw(File.ReadAllText(Server.MapPath("~/image.svg")))
看起來這是最好的解決方案... – flyingfisch
這不可能是最好的解決方案。如果你有+200個SVG文件怎麼辦?你打算將它們全部重命名並保留它們的副本嗎?也許通過創建一些任務,但在我看來,必須有更好的解決方案 –
我給這個答案增加了一些東西。如果你有非常大的svg文件,這個解決方案將不起作用,你應該在你的代碼中使用@ Html.Raw(File.ReadAllText(Server.MapPath(「〜/ image.svg」)))。 – Setmax