本文整理汇总了C#中BronieContext.Add方法的典型用法代码示例。如果您正苦于以下问题:C# BronieContext.Add方法的具体用法?C# BronieContext.Add怎么用?C# BronieContext.Add使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类BronieContext
的用法示例。
在下文中一共展示了BronieContext.Add方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Only_one_part_of_a_composite_key_needs_to_vary_for_uniqueness
public async Task Only_one_part_of_a_composite_key_needs_to_vary_for_uniqueness()
{
var serviceProvider = new ServiceCollection()
.AddEntityFramework()
.AddSqlite()
.ServiceCollection()
.BuildServiceProvider();
var ids = new int[3];
using (var context = new BronieContext(serviceProvider, "CompositeEarthPonies"))
{
context.Database.EnsureCreated();
var pony1 = context.Add(new EarthPony { Id1 = 1, Id2 = 7, Name = "Apple Jack 1" }).Entity;
var pony2 = context.Add(new EarthPony { Id1 = 2, Id2 = 7, Name = "Apple Jack 2" }).Entity;
var pony3 = context.Add(new EarthPony { Id1 = 3, Id2 = 7, Name = "Apple Jack 3" }).Entity;
await context.SaveChangesAsync();
ids[0] = pony1.Id1;
ids[1] = pony2.Id1;
ids[2] = pony3.Id1;
}
using (var context = new BronieContext(serviceProvider, "CompositeEarthPonies"))
{
var ponies = context.EarthPonies.ToList();
Assert.Equal(ponies.Count, ponies.Count(e => e.Name == "Apple Jack 1") * 3);
Assert.Equal("Apple Jack 1", ponies.Single(e => e.Id1 == ids[0]).Name);
Assert.Equal("Apple Jack 2", ponies.Single(e => e.Id1 == ids[1]).Name);
Assert.Equal("Apple Jack 3", ponies.Single(e => e.Id1 == ids[2]).Name);
ponies.Single(e => e.Id1 == ids[1]).Name = "Pinky Pie 2";
await context.SaveChangesAsync();
}
using (var context = new BronieContext(serviceProvider, "CompositeEarthPonies"))
{
var ponies = context.EarthPonies.ToArray();
Assert.Equal(ponies.Length, ponies.Count(e => e.Name == "Apple Jack 1") * 3);
Assert.Equal("Apple Jack 1", ponies.Single(e => e.Id1 == ids[0]).Name);
Assert.Equal("Pinky Pie 2", ponies.Single(e => e.Id1 == ids[1]).Name);
Assert.Equal("Apple Jack 3", ponies.Single(e => e.Id1 == ids[2]).Name);
context.EarthPonies.RemoveRange(ponies);
await context.SaveChangesAsync();
}
using (var context = new BronieContext(serviceProvider, "CompositeEarthPonies"))
{
Assert.Equal(0, context.EarthPonies.Count());
}
}
示例2: AddEntities
private static void AddEntities(IServiceProvider serviceProvider)
{
using (var context = new BronieContext(serviceProvider, "Bronies"))
{
for (var i = 0; i < 10; i++)
{
context.Add(new Pegasus { Name = "Rainbow Dash " + i });
context.Add(new Pegasus { Name = "Fluttershy " + i });
}
context.SaveChanges();
}
}
示例3: AddEntitiesAsync
private static async Task AddEntitiesAsync(IServiceProvider serviceProvider)
{
using (var context = new BronieContext(serviceProvider))
{
for (var i = 0; i < 50; i++)
{
context.Add(new Pegasus { Name = "Rainbow Dash " + i });
context.Add(new Pegasus { Name = "Fluttershy " + i });
}
await context.SaveChangesAsync();
}
}
示例4: Can_use_explicit_values
public async Task Can_use_explicit_values()
{
var serviceProvider = new ServiceCollection()
.AddEntityFrameworkSqlServer()
.BuildServiceProvider();
var guids = new List<Guid>();
using (var context = new BronieContext(serviceProvider, "GooieExplicitBronies"))
{
context.Database.EnsureDeleted();
context.Database.EnsureCreated();
for (var i = 0; i < 50; i++)
{
guids.Add(context.Add(new Pegasus { Name = "Rainbow Dash " + i, Index = i, Id = Guid.NewGuid() }).Entity.Id);
}
await context.SaveChangesAsync();
}
using (var context = new BronieContext(serviceProvider, "GooieExplicitBronies"))
{
var pegasuses = await context.Pegasuses.OrderBy(e => e.Index).ToListAsync();
for (var i = 0; i < 50; i++)
{
Assert.Equal("Rainbow Dash " + i, pegasuses[i].Name);
Assert.Equal(guids[i], pegasuses[i].Id);
}
}
}
示例5: Can_use_sequential_GUID_end_to_end_async
public async Task Can_use_sequential_GUID_end_to_end_async()
{
var serviceProvider = new ServiceCollection()
.AddEntityFrameworkSqlServer()
.BuildServiceProvider();
using (var context = new BronieContext(serviceProvider, "GooieBronies"))
{
context.Database.EnsureDeleted();
context.Database.EnsureCreated();
for (var i = 0; i < 50; i++)
{
context.Add(new Pegasus { Name = "Rainbow Dash " + i });
}
await context.SaveChangesAsync();
}
using (var context = new BronieContext(serviceProvider, "GooieBronies"))
{
var pegasuses = await context.Pegasuses.OrderBy(e => e.Id).ToListAsync();
for (var i = 0; i < 50; i++)
{
Assert.Equal("Rainbow Dash " + i, pegasuses[i].Name);
}
}
}
示例6: Can_use_GUIDs_end_to_end_async
public async Task Can_use_GUIDs_end_to_end_async()
{
var serviceProvider = new ServiceCollection()
.AddEntityFrameworkInMemoryDatabase()
.BuildServiceProvider();
var guids = new List<Guid>();
var guidsHash = new HashSet<Guid>();
using (var context = new BronieContext(serviceProvider))
{
for (var i = 0; i < 10; i++)
{
guids.Add(context.Add(new Pegasus { Name = "Rainbow Dash " + i }).Entity.Id);
guidsHash.Add(guids.Last());
}
await context.SaveChangesAsync();
}
Assert.Equal(10, guidsHash.Count);
using (var context = new BronieContext(serviceProvider))
{
var pegasuses = await context.Pegasuses.OrderBy(e => e.Name).ToListAsync();
for (var i = 0; i < 10; i++)
{
Assert.Equal(guids[i], pegasuses[i].Id);
}
}
}
示例7: Can_use_generated_values_in_composite_key_end_to_end
public async Task Can_use_generated_values_in_composite_key_end_to_end()
{
var serviceProvider = new ServiceCollection()
.AddEntityFramework()
.AddSqlServer()
.ServiceCollection()
.BuildServiceProvider();
long id1;
var id2 = DateTime.UtcNow.Ticks.ToString(CultureInfo.InvariantCulture);
Guid id3;
using (var context = new BronieContext(serviceProvider, "CompositeUnicorns"))
{
context.Database.EnsureCreated();
var added = context.Add(new Unicorn { Id2 = id2, Name = "Rarity" }).Entity;
Assert.True(added.Id1 < 0);
Assert.NotEqual(Guid.Empty, added.Id3);
await context.SaveChangesAsync();
Assert.True(added.Id1 > 0);
id1 = added.Id1;
id3 = added.Id3;
}
using (var context = new BronieContext(serviceProvider, "CompositeUnicorns"))
{
Assert.Equal(1, context.Unicorns.Count(e => e.Id1 == id1 && e.Id2 == id2 && e.Id3 == id3));
}
using (var context = new BronieContext(serviceProvider, "CompositeUnicorns"))
{
var unicorn = context.Unicorns.Single(e => e.Id1 == id1 && e.Id2 == id2 && e.Id3 == id3);
unicorn.Name = "Bad Hair Day";
await context.SaveChangesAsync();
}
using (var context = new BronieContext(serviceProvider, "CompositeUnicorns"))
{
var unicorn = context.Unicorns.Single(e => e.Id1 == id1 && e.Id2 == id2 && e.Id3 == id3);
Assert.Equal("Bad Hair Day", unicorn.Name);
context.Unicorns.Remove(unicorn);
await context.SaveChangesAsync();
}
using (var context = new BronieContext(serviceProvider, "CompositeUnicorns"))
{
Assert.Equal(0, context.Unicorns.Count(e => e.Id1 == id1 && e.Id2 == id2 && e.Id3 == id3));
}
}
示例8: Can_use_two_non_generated_integers_as_composite_key_end_to_end
public async Task Can_use_two_non_generated_integers_as_composite_key_end_to_end()
{
var serviceProvider = new ServiceCollection()
.AddEntityFramework()
.AddSqlServer()
.ServiceCollection()
.BuildServiceProvider();
var ticks = DateTime.UtcNow.Ticks;
using (var context = new BronieContext(serviceProvider, "CompositePegasuses"))
{
context.Database.EnsureCreated();
context.Add(new Pegasus { Id1 = ticks, Id2 = ticks + 1, Name = "Rainbow Dash" });
await context.SaveChangesAsync();
}
using (var context = new BronieContext(serviceProvider, "CompositePegasuses"))
{
var pegasus = context.Pegasuses.Single(e => e.Id1 == ticks && e.Id2 == ticks + 1);
pegasus.Name = "Rainbow Crash";
await context.SaveChangesAsync();
}
using (var context = new BronieContext(serviceProvider, "CompositePegasuses"))
{
var pegasus = context.Pegasuses.Single(e => e.Id1 == ticks && e.Id2 == ticks + 1);
Assert.Equal("Rainbow Crash", pegasus.Name);
context.Pegasuses.Remove(pegasus);
await context.SaveChangesAsync();
}
using (var context = new BronieContext(serviceProvider, "CompositePegasuses"))
{
Assert.Equal(0, context.Pegasuses.Count(e => e.Id1 == ticks && e.Id2 == ticks + 1));
}
}
示例9: AddEntitiesWithIds
private static void AddEntitiesWithIds(IServiceProvider serviceProvider, int idOffset)
{
using (var context = new BronieContext(serviceProvider, "ExplicitBronies"))
{
for (var i = 1; i < 11; i++)
{
context.Add(new Pegasus { Name = "Rainbow Dash " + i, Identifier = i * 100 + idOffset });
context.Add(new Pegasus { Name = "Fluttershy " + i, Identifier = i * 100 + idOffset + 1 });
}
context.SaveChanges();
}
}