gpt4 book ai didi

asp.net-mvc - MVC 5 Web Api - 从基本 Controller 继承路由

转载 作者:行者123 更新时间:2023-12-04 20:09:31 24 4
gpt4 key购买 nike

让 Controller 从其 BaseController 继承路由是否“合法”? ?好像是not allowed for Attribute Routing ,但是通过 RouteCollection 进行正常路由注册怎么样? ?

原因是我目前有一堆 Controller ,每个 Controller 都代表某种文件转换器。他们每个人都有一套通用的方法来上传要转换的文件。这些方法是每个 Controller 上的端点,而不仅仅是私有(private)方法。我希望以下路线有效:

/api/controller1/uploadfile
/api/controller2/uploadfile
/api/controller3/uploadfile

我可以举一个例子,如何在 BaseController 内完成,如果不可能,另一种选择。

最佳答案

这是有效的:

public abstract class BaseUploaderController : ApiController
{
[HttpGet, Route("uploadfile")] //Needs both because HttpGet("uploadfile") currently only supported in MVC attribute routing
public string UploadFile()
{
return "UploadFile";
}
}


[RoutePrefix("api/values")]
public class ValuesController : BaseUploaderController
{
[Route("{id:int}")]
public string Get(int id)
{
return "value";
}
}

关于asp.net-mvc - MVC 5 Web Api - 从基本 Controller 继承路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20353584/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com