小编Dmi*_*kov的帖子

如何在实体框架迁移中为具有多对多关系的数据建立种子

我使用实体框架迁移(在自动迁移模式下).一切都很好,但我有一个问题:当我有多对多的关系时,我应该如何播种数据.例如,我有两个模型类:

public class Parcel
{
    public int Id { get; set; }
    public string Description { get; set; }
    public double Weight { get; set; }
    public virtual ICollection<BuyingItem> Items { get; set; }
}

public class BuyingItem
{
    public int Id { get; set; }
    public decimal Price { get; set; }
    public virtual ICollection<Parcel> Parcels { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我理解如何为简单数据(对于PaymentSystem类)和一对多关系建立种子,但是我应该在Seed方法中编写什么代码来生成Parcel和BuyingItem的一些实例?我的意思是使用DbContext.AddOrUpdate(),因为每次运行Update-Database时我都不想复制数据.

protected override void Seed(ParcelDbContext context)
{
    context.AddOrUpdate(ps => ps.Id,
        new PaymentSystem { Id = 1, Name = …
Run Code Online (Sandbox Code Playgroud)

entity-framework ef-code-first ef-migrations

18
推荐指数
2
解决办法
2万
查看次数

如何在bootstrap3中重置模态的滚动位置?

我有一个bootstrap v3模式,就像在文档中一样.

当我第一次打开模态时("启动演示模型"按钮),垂直滚动条处于顶部位置.如果我向下滚动并在模态中单击"取消",它将关闭.没关系.但是,如果我再次打开模态,它将已经向下滚动.这是我想避免的情况.如何在顶部位置打开模态?

bootstrap-modal twitter-bootstrap-3

5
推荐指数
2
解决办法
9564
查看次数

如何无条件地连接两个表

例如,我有两个表(临时表).其中一个只包含ID,另一个包含真实信息.它们具有完全相同的行号.

#Table1
ID
14
15
16

#Table2
CarModel    Year
Ford        1996
Ferrari     2005
Toyota      2010
Run Code Online (Sandbox Code Playgroud)

如何将这两个表合并为一个(没有任何条件,只有结果表有3列,无论以什么顺序)?我需要它来插入真实表的结果

Cars
ID   CarModel   Year
Run Code Online (Sandbox Code Playgroud)

并且此表不使用标识.有一种获取ID的方法可以插入.我无法改变它.

因此,我需要一个像下列其中一个的表(排序并不重要):

#Table3
ID   CarModel    Year
14   Ford        1996
15   Ferrari     2005
16   Toyota      2010
Run Code Online (Sandbox Code Playgroud)

要么

#Table3
ID   CarModel    Year
16   Ford        1996
14   Toyota      2010
15   Ferrari     2005
Run Code Online (Sandbox Code Playgroud)

PS我理解如何使用CTE和row_number(),但我认为有更简单的方法来完成这项任务.并且可能此代码将用于MS SQL Server 2000,因此我很乐意查看其他解决方案的变体.

sql sql-server join sql-server-2000

4
推荐指数
1
解决办法
1万
查看次数