2010-12-05 31 views
0

Je travaille sur l'application ASP.NET MVC. Sur ma page maître, j'ai un formulaire que je dois soumettre à une autre action. Ci-dessous le code correspondant:Spécifier les chemins d'accès aux actions dans les pages ASPX MVC

<form id="form1" action="/Stock/PerformSearch" method="post" runat="server"> 
//some other stuff   
</form> 

Comme vous pouvez le voir, lorsque je soumets la forme que je veux aller à l'action « PerformSearch » dans le contrôleur « stock ». Cela fonctionne très bien sur mon hébergement de machine locale. Mais quand j'essaye de publier le site sur le serveur, MVC ne reconnaît plus ce chemin. Ma question est comment dois-je spécifier les chemins d'accès aux actions dans les pages ASPX de telle sorte qu'il fonctionnera à la fois localement et en direct. Je sais que je peux utiliser le "using Html.BeginForm" et cela va résoudre le problème, mais je ne veux vraiment pas l'utiliser pour d'autres raisons et aussi, je dois toujours spécifier des chemins d'actions dans de nombreux autres tags autres que étiquette de forme.

Soit dit en passant, en changeant le chemin vers « http://cse454db.cs.washington.edu/BestBet/Stock/PerformSearch »

fera fonctionner sur le serveur depuis le chemin donné est le chemin exact pour savoir où l'application va vivre (y compris le répertoire virtuel), mais je sais que ce n'est pas la solution parfaite, car je dois continuer à changer de chemin chaque fois que vous l'exécutez localement ou en direct. En outre, j'ai les mêmes problèmes en spécifiant les chemins d'accès aux actions dans les fichiers javascript. Je sais qu'il devrait y avoir une solution facile, mais j'ai regardé et je n'ai rien trouvé alors toute aide sera grandement appréciée. merci beaucoup,

Répondre

1

Je pense que vous confondez ASP.NET et ASP.NET MVC. Vous devez utiliser des aides HTML et ne jamais mettre une balise runat="server" dans une vue ASP.NET MVC. Donc, votre formulaire pourrait ressembler à ceci:

<% using (Html.BeginForm("PerformSearch", "Stock")) { %> 
    //some other stuff 
<% } %> 

Cela va prendre soin de générer la balise de forme appropriée. Qu'en est-il des chemins dans les fichiers JavaScript??

+0

comment puis-je spécifier le chemin ?? –

+0

Cela dépend de quels chemins vous parlez et comment les gérez-vous dans votre javascript. –

+0

Je parle des appels ajax, les chemins que vous mettez dans le champ "url:" –