实体框架不保留JSON数据Id
我不熟悉ASP.NETMVC,尤其是实体框架 我正在尝试将JSON数据从外部服务保存到SQL server。我首先使用代码,它创建表并插入所有记录。但原始ID值将更改为SQL自动生成的ID值。例如,原始ID 20050变为1。请查看附件中的照片。我用谷歌搜索了我的问题,没有找到解决办法 这也是我第一次在stackoverflow上发布问题。提前谢谢实体框架不保留JSON数据Id,json,asp.net-mvc,entity-framework,Json,Asp.net Mvc,Entity Framework,我不熟悉ASP.NETMVC,尤其是实体框架 我正在尝试将JSON数据从外部服务保存到SQL server。我首先使用代码,它创建表并插入所有记录。但原始ID值将更改为SQL自动生成的ID值。例如,原始ID 20050变为1。请查看附件中的照片。我用谷歌搜索了我的问题,没有找到解决办法 这也是我第一次在stackoverflow上发布问题。提前谢谢 您可以使用数据注释属性将该表的标识规范设置为false [DatabaseGenerated(DatabaseGeneratedOption.No
您可以使用数据注释属性将该表的标识规范设置为false
[DatabaseGenerated(DatabaseGeneratedOption.None)];
public int ID { get; set; }
而不是应用迁移 您可以使用
DataAnnotations
属性将该表的标识规范设置为false
[DatabaseGenerated(DatabaseGeneratedOption.None)];
public int ID { get; set; }
而不是应用迁移 我试图改变身份规范。但是,保存变化是不允许的。消息说“您所做的更改需要删除并重新创建表。”还有其他方法吗?而且,如果您先编写代码,这不是正确的方法。每次(重新)更新数据库时,您都必须去更新它created@Basic:我更改了我的答案。谢谢Amit,我在Fluent API中使用了DataAnnotations,它可以工作。嗨,Amit,我会在我可以的时候做。我需要15个声誉来做这件事。我试图改变身份规范。但是,保存变化是不允许的。消息说“您所做的更改需要删除并重新创建表。”还有其他方法吗?而且,如果您先编写代码,这不是正确的方法。每次(重新)更新数据库时,您都必须去更新它created@Basic:我更改了我的答案。谢谢Amit,我在Fluent API中使用了DataAnnotations,它可以工作。嗨,Amit,我会在我可以的时候做。我需要15个声誉来做这件事。看起来你正在使用TMDB库中的模型类作为你的模型。这是可能的(您可以使用定义键),但通常是个坏主意。存储在数据库中的实体应该是“POCO”(普通的旧CLR对象-基本上是只有属性/注释的类)。我建议您自己创建一个模型类,并使用它。感谢Basic,我尝试了Fluent Api,它可以正常工作。我还将学习如何使用我自己的模型和HTTP客户端。看起来您正在使用TMDB库中的模型类作为您的模型。这是可能的(您可以使用定义键),但通常是个坏主意。存储在数据库中的实体应该是“POCO”(普通的旧CLR对象-基本上是只有属性/注释的类)。我建议您自己创建一个模型类,并使用它。感谢Basic,我尝试了Fluent Api,它可以正常工作。我还要学习如何使用我自己的模型和HTTP客户端。