Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net核心web api应用程序,startup.cs文件中出现错误_Asp.net_Entity Framework_Asp.net Core_Asp.net Web Api_Asp.net Core Webapi - Fatal编程技术网

Asp.net核心web api应用程序,startup.cs文件中出现错误

Asp.net核心web api应用程序,startup.cs文件中出现错误,asp.net,entity-framework,asp.net-core,asp.net-web-api,asp.net-core-webapi,Asp.net,Entity Framework,Asp.net Core,Asp.net Web Api,Asp.net Core Webapi,错误消息: 操作“SampleCusAppAPI.Controllers.CustomerController.GetCustomer(SampleCusAppAPI)”没有属性路由。使用ApiControllerAttribute注释的控制器上的操作方法必须为属性路由 代码:StartUp.cs public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { if (e

错误消息:

操作“SampleCusAppAPI.Controllers.CustomerController.GetCustomer(SampleCusAppAPI)”没有属性路由。使用ApiControllerAttribute注释的控制器上的操作方法必须为属性路由

代码:StartUp.cs

public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
        {

            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }

            app.UseHttpsRedirection();

            app.UseRouting();

            app.UseAuthorization();



            app.UseEndpoints(endpoints =>
            {
                endpoints.MapControllers();  // Error Occured in this line.
            });


        }
Web Api代码:CustomerController

namespace SampleCusAppAPI.Controllers
{
    [ApiController]
    //[System.Web.Http.Route("api/[controller]")]
    public class CustomerController : ControllerBase
    {
        SampleTestingDBContext objSampleTestingDBContext = new SampleTestingDBContext();
        [System.Web.Http.Route("api/Customer/GetCustomer")]        
        [System.Web.Http.HttpGet]
        public IQueryable<Customer> GetCustomer()
        {
            return objSampleTestingDBContext.Customers.OrderByDescending(x => x.CustomerId);
        }
}
}
namespace SampleCusAppAPI.Controllers
{
[ApiController]
//[System.Web.Http.Route(“api/[controller]”)
公共类CustomerController:ControllerBase
{
SampleTestingDBContext objSampleTestingDBContext=新SampleTestingDBContext();
[System.Web.Http.Route(“api/Customer/GetCustomer”)]
[System.Web.Http.HttpGet]
公共IQueryable GetCustomer()
{
返回objSampleTestingDBContext.Customers.OrderByDescending(x=>x.CustomerId);
}
}
}

这是您想要的GET api示例。它可能会帮助您解决问题

/// <summary>
    /// Get task by id
    /// GET : api/tasks/{id}
    /// </summary>
    /// <param name="task_id"></param>
    /// <returns></returns>        
    [HttpGet("{task_id:long}")]
    public async Task<IActionResult> Get(long task_id)
    {
        var task = await _taskService.GetTaskByIdAsync(task_id, _user.org_id);
        if (task != null)
        {
            var assignee = await _taskService.GetTaskAssigneeAsync(new long[] { task_id });
            task.assignee = assignee;
            return Ok(task);
        }
        return NotFound(Logger.Error($"No task found with id {task_id}", HttpStatusCode.NotFound));
    }
      
//
///按id获取任务
///GET:api/tasks/{id}
/// 
/// 
///         
[HttpGet(“{task_id:long}”)]
公共异步任务Get(长任务\u id)
{
var task=await\u taskService.GetTaskByIdAsync(task\u id,\u user.org\u id);
如果(任务!=null)
{
var assignee=await_taskService.GetTaskAssigneeAsync(新的long[]{task_id});
task.assignee=受让人;
返回Ok(任务);
}
返回NotFound(Logger.Error($“找不到id为{task_id}的任务”,HttpStatusCode.NotFound));
}

错误清楚地说明了这个
GetCustomer(SampleCusAppAPI)
,这个方法在哪里?它应该用路线来装饰attribute@kingking,你能发送示例/链接吗?示例就在你发布的内容中,但代码是针对
GetCustomer()
,而不是针对
GetCustomer(SampleCusappi)
,所以我问这个方法在哪里。@king,我的api控制器GetCustomer()中只有一个方法。但出现了如下错误(GetCustomer(SampleCusAppAPI))。此错误发生在app.UseEndpoints中。@king king请向我发送任何web api路由示例链接。我对core是新手。