我试图找出这两个框架中URL匹配的不同之处
我知道以下对于ASP.Net Web是正确的,想知道ASP.NET内核也是这样吗?
用于在未显式指定HTTP方法的情况下派生HTTP方法的操作名称,例如
public int GetById(int Id);
这里没有指定HTTP方法,但是由于约定,它只能匹配到get请求
如果未指定HTTP方法,并且也不能从操作名称派生HTTP方法,则默认为POST
参数还参与匹配URL,如下所示
// GET / IEnumerable / GET public string[] Get() {返回新string[]{ "val
我想为我的asp.net mvc应用程序定制URL。目前我正在开发asp.net MVC4.5
案例:1
Current URL : localhost/Country/Index/param1
Expected URL : localhost/param1
案例:2
Current URL : (1) localhost/Country/Index/param1 (Param1 is name of country)
(2) localhost/State/Index/param11 (param11 is name of state)
Expected
我正在将一个项目迁移到asp网络核心,但是我无法配置这些路由,我使用属性来映射操作。
ASP.Net WebAPI2代码
[Route("api/[controller]")]
public class SalesController : Controller
{
// api/sales/1 -> ok
[HttpGet]
public HttpResponseMessage Get(int id)
{
// Logic
}
// api/sales -> ok
[HttpGet]
在我的网站上,我有这样的网址:
https://www.mywebsite.com/View/Index/{MongoDbId}
控制器返回带有产品详细信息的视图。
我的产品类DTO (只是重要的领域)
public class ProductDto
{
public string Id {get; set;}
public string Name {get; set;}
}
此时,我有一个名为View的控制器和一个处理请求的Index方法,但是我希望有这样的内容:
https://www.mywebsite.com/v/56b8b8801561e80c245a165c/amazi
我记得在HTTP中,用ASP.NET命令(例如GetList() => HTTP GET,Delete() => HTTP DELETE)作为Web API REST方法名称的前缀就足以让传入的调用得到适当的路由。 我还记得,在ASP.NET Web API中,会进行参数匹配,这样即使是Get(int id)和Get(int id, string name)也可以自动适当地路由,而不需要任何属性。 public class MyController
{
public ActionResult Get(int id) => ...
public ActionResu
下面是我的代码。我尝试将下面的代码从asp.net转换为asp.net核心。但在asp.net核心的最后一行,ConvertTo显示错误,因为Get(键)没有ConvertTo的定义。不知道问题出在哪里。
我找不到任何解决方案,如何在asp.net核心中编写以下代码?
public static T Get<T>(string key)
{
if (!Exists(key))
{
throw new ArgumentException(String.Format("No such key in the
是否存在使用ASP.NET核心以与大多数其他语言相同的方式进行标准嵌套路由的内置方式?如何在C#中实现我在Go和JS中显示的内容?
Go中使用chi的示例
r := chi.NewRouter()
r.Use(amiddleware) // Use some middleware
r.Group(func(r chi.Router) { // A group with further configuration
r.Use(another) // Mi