【发布时间】:2020-12-20 01:26:49
【问题描述】:
所以这是我收到的完整错误消息。 (见标题)
我在 Azure 上托管一个 ASP.NET Web API,以及一个 Azure SQL 数据库。 我已将 .edmx 连接到 Azure 数据库,因此它可以毫无问题地向我显示托管数据库中的模型。
我非常沮丧的是我无法发送任何 API 获取请求调用!
[EnableCors(origins: "*", headers: "*", methods: "*")]
[System.Web.Http.Route("~/api/Admin/getTest")]
[System.Web.Http.HttpGet]
public List<CARCOLOUR> getTest()
{
INF370KODEITEntities db = new INF370KODEITEntities();
db.Configuration.ProxyCreationEnabled = false;
List<CARCOLOUR> testData = db.CARCOLOURs.ToList();
return testData;
}
这是我的连接字符串(由于明显的原因,省略了密码和用户名)
<connectionStrings>
<add name="INF370KODEITEntities" connectionString="metadata=res://*/Models.CarwashModel.csdl|res://*/Models.CarwashModel.ssdl|res://*/Models.CarwashModel.msl;provider=System.Data.SqlClient;provider connection string="data source=kodeit-apidbserver-database.database.windows.net;initial catalog=KODEIT_API_db;persist security info=True;user id='';password='';MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
</connectionStrings>
此调用仅获取汽车颜色列表。但是每次我在 Postman 上调用时,都会收到令人沮丧的 500 错误。感谢this 我很幸运地找到了一个修复程序来显示更多信息。但我不确定如何修复它。
因此我的问题是,如何解决我收到的“意外代码优先”错误?
免责声明:我是一名大学生(也就是一个非常新手的程序员),因此,如果我使用了不正确的行话和/或不够具体/不够清楚,我提前道歉。
【问题讨论】:
-
您是否检查过连接字符串是否以元数据开头?
-
如果您有访问权限,服务器日志可能会告诉您为什么会获得...
-
@insane_developer 添加了连接字符串。谢谢你提醒我!看来我的字符串确实以元数据开头
-
@GideonBotha 您是否尝试注释掉引发此异常的行?它将在您的 DbContext 类中。
-
@insane_developer 我在哪里可以找到 DbContext 类? (我好像找不到。可能找错地方了)
标签: c# api asp.net-web-api postman http-status-code-500