首页 > 解决方案 > 我可以允许我的 RouteTemplate 使用“/”字符吗?

问题描述

我在 AngularJS WebAPI/MVC 项目的 API 控制器中有以下方法:

        [Route("GetRecordByID/{metricID:string}")]
    [ResponseType(typeof(Metric_Approval_Data))]
    [HttpGet]
    public Metric_Approval_Data GetRecordByID(string metricID)
    {
        Metric_Approval_Data arecord = null;
        try
        {
            arecord = dbContext.Metric_Approval_Data.Where(x => x.Metric_ID == metricID).SingleOrDefault();
        }
        catch (Exception e)
        {
            arecord = null;
        }

        return arecord;
    }

此方法应该可以正常工作,但是当我构建和运行我的项目时,我遇到了以下错误:

System.InvalidOperationException HResult=0x80131509 Message=名为“GetRecordByID”的操作的路由模板“/api/Record/GetRecordByID/{metricID:string}”不能以“/”字符开头。

目前我无法找到此问题的修复程序或一些文档,并且想知道是否有一个简单的解决方法或者我需要在某些时候使用 CAST?

任何帮助表示赞赏:)

标签: c#angularjsasp.net-mvcasp.net-web-apicontroller

解决方案


推荐阅读