2012-01-03 13 views
1

と「r.ashx」を指して、突然私のフォームのリンクはすべて、このようになります。フォームアクションは今MVC 3

コード:

@using (Html.BeginForm("Submit", "Contact", FormMethod.Post, new { id = "contactUsForm" })) 
{ 
    <div class="contact-form"> 
     <h4><strong>Send Us a Message</strong></h4> 
      <div class="form-row"> 
       @Html.LabelFor(model => model.Form.Name, "Your Name *") 
       @Html.TextBoxFor(model => model.Form.Name, new { tabindex = 1, @class = "field blink" }) 
       @Html.ValidationMessageFor(model => model.Form.Name, "First name required.") 
      </div> 
      <div class="form-row"> 
       @Html.LabelFor(model => model.Form.Name, "Your Email *") 
       @Html.TextBoxFor(model => model.Form.Email, new { tabindex = 2, @class = "field blink" }) 
       @Html.ValidationMessageFor(model => model.Form.Email, "") 
      </div> 
      <div class="form-row"> 
       @Html.LabelFor(model => model.Form.Name, "Subject *") 
       @Html.TextBoxFor(model => model.Form.Subject, new { tabindex = 3, @class = "field blink" }) 
       @Html.ValidationMessageFor(model => model.Form.Subject, "Subject required.") 
      </div> 
      <div class="form-row"> 
       @Html.LabelFor(model => model.Form.Message, "Your Message *") 
       @Html.TextAreaFor(model => model.Form.Message, new { tabindex = 4, @class = "field blink" }) 
       @Html.ValidationMessageFor(model => model.Form.Message, "Message required.") 
      </div> 
      <div class="form-buttons"> 
       <input type="submit" value="Send Message" class="submit-button" id="SubmtButton" tabindex="5" /> 
      </div> 
    </div> 
} 

Global.asaxの

public static void RegisterGlobalFilters(GlobalFilterCollection filters) 
     { 
      filters.Add(new HandleErrorAttribute()); 
     } 

     public static void RegisterRoutes(RouteCollection routes) 
     { 
      routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 

      routes.MapRoute("BlogArchive", "Blog/{year}/{month}", new { controller = "Blog", action = "FilterByMonth" }, new { year = @"\d+", month = @"\d+" }); 
      routes.MapRoute("BlogRedirect", "Blog/Redirect", new { controller = "Blog", action = "Redirect" }); 
      routes.MapRoute("BlogListingFiltered", "Blog/{filterBy}/{filter}", new { controller = "Blog", action = "Filter" }); 
      routes.MapRoute("BlogCategories", "Blog/Category/{categoryFriendlyName}", new { controller = "Blog", action = "FilterByCategory" }); 

      // 404 page... 
      routes.MapRoute("Errors", "Errors/{action}", new { controller = "Error", action = "Error" }); 

      // Error Pages 
      routes.MapRoute("Error", "Errors/{errorCode}", new { controller = "Error", action = "Error", errorCode = UrlParameter.Optional }); 

      // Agility Builtin Route 
      routes.MapRoute("Agility", "{*sitemapPath}", new { controller = "Agility", action = "RenderPage" }); 

      // needs to be here, after agility routing for url generation to happen 
      routes.MapRoute("Contact", "Contact/{action}", new { controller = "Contact", action = "Submit" }); 

      //default method for action/controller 
      routes.MapRoute("Default", "{controller}/{action}/{id}", new { controller = "Error", action = "Error", id = "" }); 
     } 

のWeb.config

<httpHandlers> 
     <add path="*.less" verb="GET" type="dotless.Core.LessCssHttpHandler, dotless.Core" /> 
     <add path="glimpse.axd" verb="GET,POST" type="Glimpse.Core.Handler" /> 
    </httpHandlers> 
    <trace writeToDiagnosticsTrace="true" enabled="true" pageOutput="false" /> 
    <httpModules> 
     <add name="Glimpse" type="Glimpse.Core.Module" /> 
    </httpModules> 
+0

MVCプロジェクトで定義されているルートとは何ですか? – Romias

+0

私の頭の上からはルーティングの問題のように見えます。あなたのGlobal.ashxファイルがどのように見えるかを知るほうが役に立つかもしれません。 –

+0

このプロジェクトにはhttpmodulesまたはhttphandlersがありますか? – IamStalker

答えて

3

Global.asaxの中RegisterRoutesにこのコード行を追加するには、問題を解決:

routes.Clear(); 
+0

誰かがあなたが*なぜ*あなたが賞金を再追加したいかもしれないかを理解するのに役立つより良い回答を追加した場合。 – Will

+0

これは動作しますが、なぜですか? –

+0

コードをどの行に置いたのですか?!?!?!?!?!?! – snowYetis

関連する問題