0
我正在学习EF。我的代码如下所示。避免添加副本
我添加了关键注释,因为当我添加一个符号时,它应该被添加一次而没有更多。所以如果增加欧元/美元,我不希望有不同的欧元/美元。然而,在这个程序的不同运行中,当我运行代码时,它会抱怨密钥已经存在。如果上下文不在数据库中,它是如何创建上下文的,或者如果上下文已经存在,如何获取它的引用?
using (var db = new TickDataTestContext())
{
var td = new SymbolTickDataEntity { Symbol = symbol };
db.SymbolTickData.Add(td);
db.SaveChanges();
while (true)
{
etc....
public class SymbolTickDataEntity
{
public int SymbolTickDataEntityID { get; set; }
[Key]
[Required]
public string Symbol { get; set; }
public virtual IList<MarketDataDepthEntity> Mdds { get; set; }
public SymbolTickDataEntity() { Mdds = new List<MarketDataDepthEntity>(); }
}
public class TickDataTestContext : DbContext
{
public DbSet<MarketDataEntity> MarketData { get; set; }
public DbSet<MarketDataDepthEntity> MarketDataDepth { get; set; }
public DbSet<SymbolTickDataEntity> SymbolTickData { get; set; }
}
谢谢你的作品。 – user1676605