2009-07-19 4 views
0

j'ai créé une nouvelle classe appelée HTMLRenderer et je l'appelle de mon avis ASPX Codela page asp.net mvc ne peux pas trouver la référence

namespace Golf.Content 
{ 
    public static class HtmlRenderer 
    { 
     public static void RenderHtmlPage(HtmlHelper helper_, string path_) 
     { 
      var reader = new StreamReader(path_); 
      var contents = reader.ReadToEnd(); 
      helper_.ViewContext.HttpContext.Response.Write(contents); 
     } 
    } 
} 

et je l'utilise

<% HtmlRenderer.RenderHtmlPage(Html, Server.MapPath("http://www.salemgolfclub.org/Members/newletters/welcome.html")); %> 

et je reçois l'erreur

d: \ Adam \ code \ CSharp \ Asp.net \ Adam \ Views \ Home \ Index.aspx (2): erreur CS0234: le type ou le nom namespace 'contenu' n'existe pas dans la namespa ce 'Golf' (manque-t-il une référence d'assembly?)

La compilation compile et l'espace de noms de contenu existe-t-il?

des suggestions sur ce qui se passe mal ici

+0

Il semble qu'il ne trouve pas l'espace de nom Golf.Content à la place de quelque chose de mal avec la classe elle-même. Pouvez-vous montrer comment vous référencez la classe dans l'en-tête aspx? – xandy

Répondre

2

Ajouter cette ligne à votre vue (SO - How do I use an extension method in an ASP.NET MVC View?):

<%@ Import Namespace="Golf.Content" %> 

Et utiliser Html.RenderHtmlPage() alors:

<% Html.RenderHtmlPage(Server.MapPath("http://www.salemgolfclub.org/Members/newletters/welcome.html")); %> 
+0

j'ai cette ligne mais quand je cours elle explose en disant qu'elle ne trouve pas cet espace de noms CS0234: Le type ou le nom d'espace de noms 'Content' n'existe pas dans l'espace de nom 'Golf' – leora