2013-08-14 4 views
0

Voici la situation:Comment référencer des fonctions à partir d'autres fichiers de fonction dans ASP.NET Web Pages 2?

Disons que j'ai deux fichiers dans App_Code contenant des blocs de fonctions dans chaque:

fonction échantillon est ici # 1 dans le fichier AppCode/File1.cshtml:

@functions { 
    public static Boolean getTrue() { 
    return true; 
    } 
} 

Voici fonction échantillon # 2 dans le fichier AppCode/File2.cshtml:

@functions { 
    public static Boolean getFalse() { 
    return false; 
    } 
} 

Je peux référencer les fonctions soit dans les fichiers de CSHTML mon dossier racine via @ File1.getTrue() ou @ File2.getFalse().

Cependant, puis-je appeler @ File2.getFalse() dans AppCode/File1.cshtml de telle sorte que:

@functions { 
    public static Boolean getTrue() { 
    return ([email protected]()); 
    } 
} 

Répondre

1

code dans une fonction marquée avec le mot-clé helper est pur C#. Par conséquent, vous devez supprimer le signe Razor @. Cela ne devrait être utilisé que pour rendre les variables côté serveur et les résultats d'expression au navigateur.

@functions { 
    public static Boolean getTrue() { 
    return (!File2.getFalse()); 
    } 
} 
+0

Salut Mike, merci pour votre réponse. Vous avez raison, en ce que '@' devrait être omis. Il s'avère que le problème était que IntelliSense dans VS2012 ne prenait pas le deuxième fichier de fonction et il soulignait les fonctions avec des squigglies rouges. J'ai confondu cela avec le fait que je ne pouvais pas accéder aux fonctions, mais elle compilait et fonctionnait correctement. – ChAmp33n

Questions connexes