2016-10-24 168 views
0

我有一個控制器(CarsController)。 我想在這個控制器中設置多個行動路徑。例如;Asp.Net Mvc多屬性路由

public class CarsController : Controller 
{ 
    [Route("cars/create")] 
    [Route("cars/edit/{id}")] 
    public action CreateOrEdit(int? id) 
    { 
     ... 
    } 
} 

但我不能。有什麼問題?

+0

試試這個:'[路線( 「汽車/ {類型:正則表達式(創建|編輯)}/{ID}」)] ',看到類似的問題:http://stackoverflow.com/a/24472455/6378815。 –

+0

謝謝你的回答。這是偉大的工作:) –

回答

0

以下代碼是很好的工作。謝謝山本哲也..

[Route("cars/{type:regex(create|edit)}/{id?}")] 
    public async Task<ActionResult> CreateOrEdit(long? id) 
    { 
     await FillViewBag(); 
     if (id.HasValue) 
     { 
      return View(await this.Database.Cars.Include(i => i.Files).SingleAsync(id.Value)); 
     } 
     return View(); 
    } 

當使用行動

@Url.Action("CreateOrEdit", new { type="create"})