5
完全なURLを取得しようとしていますが、RouteUrl
が空に戻ります。ビューでUrl.RouteUrlが空に戻る
、 - 私はそのように呼び出す:ここ
alert('@Url.RouteUrl("Api", new { controller = "Parametros", id = "" })');
は私のルートの設定です:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapHttpRoute(
name: "Api",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Usuario",
action = "Login", id = UrlParameter.Optional }
);
}
と私のコントローラ:
public class ParametrosController : ApiController
{
ISistemaService _sistemaService;
public ParametrosController(Empresa empresa, ISistemaService sistemaService)
{
_sistemaService = sistemaService;
}
public PagedDataModel<ParametroDTO> Get(
[FromUri]ParametroFiltro filter, int page, int pageSize)
{
int total = 0;
var list = _sistemaService.Paging(filter, page, pageSize, out total);
return new PagedDataModel<ParametroDTO>(page, pageSize, total, list);
}
public ParametroDTO Get(string codigo)
{
return _sistemaService.GetParametroPorCodigo(codigo);
}
}
これはうまくいきました。私はこのパラメータが必要な理由を理解していませんでしたか? – will
ルーティングエンジンに、標準のMVCルートではなくAPIルートを生成する必要があることを示すには、このパラメータが必要です。 –
humm ... ok ..tks。 – will