c# - 数据不会使用实体框架插入到数据库中
问题描述
我在现有数据库中添加了更多表。AspNetForum 和 AspNetPosts。然后我运行以下命令
Scaffold-DbContext 'Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=aspnet-my-app-20191022075020'
Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -f
为了更新我的数据库,因为首先我认为这是问题所在。
我有主键。所以问题不在于主键。我一直在互联网上搜索 2 天的解决方案,但我无法弄清楚问题所在。
我需要再次更新我的数据库吗?有谁知道这里发生了什么?
我的数据库模型类如下:
namespace my_app.Models
{
public partial class AspNetForum
{
[Key]
public int topic_id { get; set; }
public string topic_title { get; set; }
public DateTime? topic_create_time { get; set; }
public string topic_owner { get; set; }
}
public partial class AspNetPosts
{
[Key]
public int post_id { get; set; }
public int topic_id { get; set; }
public string post_text { get; set; }
public DateTime? post_create_time { get; set; }
public string post_owner { get; set; }
}
}
控制器:
[HttpPost]
public ActionResult AddTopic(AddTopic kati)
{
if (ModelState.IsValid)
{
AspNetForum topic = new AspNetForum
{
topic_title = kati.Topic_Title,
topic_create_time = DateTime.Now,
topic_owner = kati.Email
};
dbContext.AspNetForum.Add(topic);
dbContext.SaveChangesAsync();
int id = topic.topic_id;
AspNetPosts fp = new AspNetPosts
{
topic_id = id,
post_text = kati.Topic_Post,
post_create_time = DateTime.Now,
post_owner = kati.Email
};
dbContext.AspNetPosts.Add(fp);
dbContext.SaveChangesAsync();
}
return View(kati);
}
解决方案
尝试调用 SaveChanges 而不是 SaveChangesAsync。这样,您将能够捕获异常(如果有)。
有关 SaveChanges 与 SaveChangesAsync 的详细信息: 实体框架 SaveChanges() 与 SaveChangesAsync() 和 Find() 与 FindAsync()
推荐阅读
- json - 如何在 scala 中使用 json?
- javascript - primeng 和 angular 的动态下拉选项
- xml - Outlook 2016 未使用自动发现 XML
- python - 无法在表中使用 Beautiful Soup 抓取人员 ID 数据
- powerbi - Power BI 可视化格式窗格文本标题没有 tedt 标题输入框
- php - 通过 PHP-DI(自动装配)工作获得 Slim
- c - 在 C 中的进程之间传输 JPEG 文件
- google-cloud-platform - 如何在单个 bq 命令中删除项目的多个 bigquery 数据集
- vue.js - 如何在 vue.js datepicker 中设置出生日期和死亡日期的日期范围?
- android - 打开 BottomSheetDialogFragment 时禁用中断