我正在阅读以下复数教程(https://app.pluralsight.com/library/courses/asp-dot-net-core-restful-api-building/table-of-contents)并尝试将知识应用于我在制作基本应用程序的同时拥有的现有数据库。
1) 我在 AssetRepository 中 AddAsset 的开头放置了一个断点。
2) 我向我的 API 发送以下 POST 请求:
POST http://localhost:6059/api/assets
{
"bay": "X",
"tile": "1",
"Serialnumber": "SERIAL",
"devicename": "DEVICENAME",
"assetspecs" : [
{
"assetattrid": "SIZE",
"numvalue":12
},
{
"assetattrid": "POWER",
"numvalue":24
}
]
}
3) CreateAsset 从 AssetController 运行,AddAsset 从存储库通过控制器运行
4) 调试器遇到了 _assetRepository.AddAsset(assetEntity); 并从存储库运行 AddAsset
5) 就在 AssetRepository.AddAsset 的最后一行执行之前,(_context.Asset.Add(asset);) 调试器告诉我,在进入该行之前,我有一组格式正确且具有唯一 ID 的记录 - 一切看起来都正常并且应该将其添加到数据库中。
6) 我按下 f11 并且调试器跳转到我的上下文文件并运行 OnConfiguring 和 OnModelCreating 没有问题,然后返回到它停止的 CreateAsset 控制器操作。
7) 我再次按 f11 并检查 if (!_assetRepository.Save()) 条件,这会引发接受,告诉我我有一个无效的列名 Assetuid。在应用程序洞察调试输出中,列是大写的,所有其他列都以小写开头,这看起来很奇怪。
我在这上面花了半天时间,如果有人可以提供帮助,我很茫然。还有一些可能涉及到的文件,我没有代表,如果您需要进一步查看任何内容,请告诉我,谢谢!!!!
哔哔one
相关分类