2013-04-11 10 views
0

Je veux ceci:événement bouton ne fonctionne pas

@using (Html.BeginForm("bgcTest", "CompaniesController")) 
{ 
    <p> 
     Ange BolagsID: <br /> 
     <input type="text" name="BolagsID" /> 
     <input type="submit" value="bgc test" /> 
    </p> 
} 

au feu cet événement:

[AcceptVerbs(HttpVerbs.Post)] 
public ActionResult bgcTest(string BolagsID) 
{ 
    ... 
} 

Mais je reçois l'erreur:

The resource cannot be found.

Description: HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable. Please review the following URL and make sure that it is spelled correctly.

Requested URL: /CompaniesController/bgcTest

Je ne peux pas pour la vie de moi le comprendre. Si je fais juste un lien d'action, ma méthode se déclenche, mais j'ai besoin d'une variable entrée par l'utilisateur pour aller avec le feu.

Qu'est-ce que je fais mal?

(Ceci est ma première fois avec MVC et je dois mettre en œuvre certaines fonctionnalités dans un projet déjà existant. Pour le travail.)

+0

S'il vous plaît, arrêtez-vous référence à "ASP.NET MVC" simplement "MVC". L'un est un cadre, tandis que l'autre est un modèle de conception indépendant du langage. C'est comme appeler IE - "Internet" –

+0

Yessir, édité le titre pour les futurs lecteurs! –

+0

J'ai modifié votre titre. S'il vous plaît voir, "[Les questions devraient inclure" tags "dans leurs titres?] (Http://meta.stackexchange.com/questions/19190/)", où le consensus est "non, ils ne devraient pas". –

Répondre

2

Le nom de votre classe contrôleur (fichier .cs) est CompaniesController.cs. C'est une convention (comportement par défaut) où MVC l'identifiera automatiquement comme un contrôleur. Lorsque vous faites référence à ce contrôleur dans votre vue, utilisez uniquement Companies. Si vous utilisez CompaniesController MVC va essayer de trouver un fichier CS nommé CompaniesControllerController.

code correct:

@using (Html.BeginForm("bgcTest", "Companies")) 
+0

Cheezus, c'était aussi simple que ça? Je me sens comme un idiot total. Merci! La réponse sera acceptée dans 8 minutes. –

+0

Je suis assez sûr que nous avons tous fait cette erreur au moins une fois :) – AndreCruz

+0

Ouais, je ne suis jamais, je le répète, jamais, va faire à nouveau cette erreur! Pas après avoir lutté pendant trois heures avec, puis obtenir cette réponse ...: P –

Questions connexes