2012-04-07 6 views
1

Est-il possible de rendre Razor dans Html.Raw()? J'ai généré une page dynamique qui utilise la méthode Html.Raw() pour rendre la page créée dans le contrôleur. À l'intérieur de cette page, j'ai un tag d'image qui devrait récupérer l'image via Url.Action.Render Razor dans Html.Raw() (MVC3)

var image = string.Format("<img src=\"@Url.Action(\"GetImage\", \"ImageUtility\")?id={0}\" alt=\"{1}\" />", Image.ImageId, Image.Name); 

Comme vous pouvez le voir cela rendrait ce qui suit sans le rasoir étant rendu:

<img src="@Url.Action("GetImage", "ImageUtility")?id=10000" alt="Image Name" /> 

Répondre

1

Essayez d'envelopper Url.Action avec parenthèses.

Voir les commentaires de this answer et de @ Igor relatifs à.

+0

C'était de ma faute, je pensais que c'était un problème de rasoir mais j'ai rapidement compris que mon routage avait chamboulé l'appel à l'action. Bien que je sois tombé un bloc de route pour rendre CSS à rendre? –

+0

Je n'ai pas compris ce que vous voulez dire dans votre dernière phrase ... pourriez-vous expliquer? –

+0

C'est bon je l'ai réparé. Mon problème consistait à extraire css d'une base de données et de le rendre dans une vue. –