C# 在实体框架中优化AppendRow操作

C# 在实体框架中优化AppendRow操作,c#,entity-framework,C#,Entity Framework,我正在通过实体框架试验仅附加操作 已将数据库.Log路由到跟踪.Write 考虑如下表 public class AzureBillingTest { [Key] public int Id { get; set; } public string Name { get; set; } public string Team { get; set; } } 以下代码: dbContext.Entry(value).State = EntityState.Added;

我正在通过实体框架试验仅附加操作

已将
数据库.Log
路由到
跟踪.Write

考虑如下表

public class AzureBillingTest
{
    [Key]
    public int Id { get; set; }
    public string Name { get; set; }
    public string Team { get; set; }
}
以下代码:

dbContext.Entry(value).State = EntityState.Added;
dbContext.SaveChanges();
翻译为:

INSERT [dbo].[AzureBillingTests]([Name], [Team])
VALUES (@0, @1)
SELECT [Id]
FROM [dbo].[AzureBillingTests]
WHERE @@ROWCOUNT > 0 AND [Id] = scope_identity()
-- @0: '175fb5c4cfa4474f8944ecec6f158fbb' (Type = String, Size = -1)
-- @1: 'billing' (Type = String, Size = -1)
-- Executing at 11/26/2015 11:45:21 AM -08:00
-- Completed in 182 ms with result: SqlDataReader
我想我知道为什么我们有[Id]的SELECT语句——用于加载到实体对象中。如果我错了,请纠正我


比方说,我不想将[Id]加载回实体框架来优化查询,我应该怎么做?

只有在看到性能问题时才进行优化。此时,此查询不会导致性能问题。如果你不想找回你的Id,只要把它做成一个Guid,并且在你的应用程序中创建一个新实体的每一天生成一个新的。嗯,Guid可能对我不起作用。对于我使用的超大表,肯定存在性能问题。