更新:MVC路線不工作
正如有人指出的,我在我的路線註冊缺少秒。現在我有第二個問題。
這是我想要的工作:
http://localhost/products/ - > ProductsController.Index()
http://localhost/products/3/apples - > ProductsController.Details(?INT ID,字符串產品名稱)
這是目前發生的事情:
http://localhost/products轉到我的詳細信息操作。
如何爲此設置路線?
我設置了以下路線在我Global.asx文件:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"ViewProduct",
"products/{id}/{productName}",
new { controller = "Products", action = "Details", id = 0, productName = "" } // Parameter defaults
);
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
}
我有以下控制器:
public class ProductsController : Controller
{
//
// GET: /Products/
public ActionResult Index()
{
IList<Product> products = new List<Product>
{
new Product { Id = 57349, ProductName = "Apple" },
new Product { Id = 57350, ProductName = "Banana" }
};
return View(products);
}
public ActionResult Details(int? id, string productName)
{
Product p = new Product { Id = id.Value, ProductName = productName };
return View(p);
}
}
你使用哪個版本的iis? – 2010-08-11 19:41:51
我沒有使用IIS。我正在使用內置的Visual Studio Web Server。 – Dismissile 2010-08-11 19:42:33