2011-06-22 5 views
2

この問題は今日始まっています。私は、インデックスアクションを持つ "コース"というコントローラを持っています。だから一般的に、私はhttp://domain.com/Courseにナビゲートするだけでページを見ることができるはずです。しかし、URLに「インデックス」、つまりhttp://domain.com/Course/Indexが含まれていないと、今日の時点で、リソースが見つかりませんでした。ASP.NET MVCコントローラURLにインデックスを追加せずにインデックスアクションを読み込めません

マイコースコントローラ:背後

[HandleError] 
    public class CourseController : Controller 
    { 
     OIEPRepository repo = new OIEPRepository(); 

     public ActionResult Index() 
     { 
      var courses = repo.GetCourseCategoriesByCulture(SiteGlobals.UICulture).ToList(); 
      return View(courses); 
     } 

     [AcceptVerbs("GET")] 
     public ActionResult Detail(int id) 
     { 
      var course = repo.GetCourseById(id); 
      if (course != null) 
       return View(course); 
      else 
       return RedirectToAction("Index"); 
     } 

    } 

マイGlobal.ascxコード:

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

      routes.MapRoute(
       "Default", // Route name 
       "{controller}/{action}/{id}", // URL with parameters 
       new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults 
      ); 

      /*routes.MapRoute(
       "Detail", 
       "{controller}/{id}", 
       new { controller = "Course", action = "Detail", id = 0 } 
      );*/ 

} 

     protected void Application_Start() 
     { 
      AreaRegistration.RegisterAllAreas(); 

      RegisterRoutes(RouteTable.Routes); 
     } 

何が起こっているの任意のアイデア?

+0

あなたが表示したコードは動作するはずです。問題はどこかにある。したがって、この問題が今日始まった場合は、VCSのソースコードを使ってdiffを実行し、昨日から変更されたものを比較するだけです。 –

+0

ええと私もそうだと思います。私は多くの変更を加えました。主にGalleryServerProモジュールを追加しました。 –

答えて

0

詳細アクションでは、HttpGet属性の装飾[AcceptVerbs( "GET")]は必要ありません。

関連する問題