gpt4 book ai didi

code-first - 使用 Entity Framework Code First 和 SQLServer Compact 4.0 时出现“默认值不支持错误”

转载 作者:行者123 更新时间:2023-12-02 20:23:45 26 4
gpt4 key购买 nike

我正在尝试使用 xunit 和 TestDriven.Net 来测试数据库,使用 SQL CE4。这是实体定义:

    public class Product 
{
private readonly ICollection<Inventory> inventories = new List<Inventory>();
private int id;

public virtual int Id { get; set; }

//public virtual string ProductName { get; set; }

public virtual ICollection<Inventory> Inventories
{
get { return inventories; }
}
}

public class ProductConfiguration : EntityTypeConfiguration<Product>
{
public ProductConfiguration()
{
HasKey(p => p.Id); //Id column of the product is an Identity column

Property(p => p.Id);
}
}

测试方法如下:

    [Fact]
public void WhenProductAddedItShouldPersist()
{
var product= ObjectMother.Single<Product>();
productRepository.Add(product);
unitOfWork.Commit();
Assert.NotNull(productRepository.One(product.Id));
}

XUnit 通过该方法,而 TestDriven 失败并显示消息 -“System.NotSupportedException:不支持默认值”。

令人惊讶的是,如果我向实体添加另一个属性(例如 ProductName),TestDriven 也会通过。谁能给我一些线索为什么会发生这种情况?

最佳答案

我遇到了同样的错误,在搜索时我发现了这个:http://social.msdn.microsoft.com/Forums/en/adodotnetentityframework/thread/583c7839-22a4-460e-8665-3e5e3998a0d5

看起来这是一个已知的错误。

关于code-first - 使用 Entity Framework Code First 和 SQLServer Compact 4.0 时出现“默认值不支持错误”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6673923/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com