2016-07-15 1 views
0

Я пытаюсь вызвать действие на контроллере в проекте MVC от зрения, и я получаю следующее сообщение об ошибке:Пытается вызвать действие из cshtml с ошибкой маршрутизации?

This can happen when a controller uses RouteAttribute for routing, but no action on that controller matches the request

Я читал некоторые люди удалили атрибут маршрутизации, чтобы получить эту работу но это кажется немного экстремальным. Кто-нибудь знает, с чего начать с этого?

//Calling in view like so 
@Html.Action("Edit", new { datablockId = 227 }) 

//THe controller 
[RoutePrefix("CustomData")] 
public class CustomDataController : Controller, ICustomDataController 
{ 
    [Route("Edit")] 
    [HttpGet] 
    public ActionResult Edit(int datablockId) 
    { 
     return this.PartialView(new CustomDataEditViewModel() { DataRows = Data, DataBlockId = datablockId }); 
    } 
} 

ответ

0

Попробуйте маршрутизации действия к этому конкретному контроллеру явно, как это:

@Html.Action("Edit", "CustomData" ,new { datablockId = 227 }) 

Html действия принимает параметры, которые могли бы фильм исправить проблему маршрутизации, эти параметры: Html.Action («Действие», «Контроллер», Параметры)