gin*_*boy 5 asp.net entity-framework code-first c#-4.0
使用"EF-Code First"时,我得到一个ModelValidationException(在底部).它希望我定义一个Key,但我不确定它究竟意味着什么......
public class Unit
{
Guid id;
String public_id;
String name;
bool deleted;
}
public class MyDataContext : DbContext
{
public DbSet<Unit> Units { get; set; }
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Unit>().ToTable("sometable");
}
}
[TestFixture]
public class DataTests
{
[Test]
public void Test()
{
MyDataContext database = new MyDataContext();
var o = database.Units;
Console.WriteLine(o.Count()); // This line throws!
Assert.IsTrue(true);
}
}
Run Code Online (Sandbox Code Playgroud)
System.Data.Entity.ModelConfiguration.ModelValidationException:在模型生成期间检测到一个或多个验证错误:
System.Data.Edm.EdmEntityType :: EntityType'Unit'没有定义键.定义此EntityType的键.
System.Data.Edm.EdmEntitySet:EntityType:EntitySet Units基于类型Unit,没有定义键.
创建字段属性,然后使用如下[Key]属性:
[Key]
public Guid MyId { get; set; }
Run Code Online (Sandbox Code Playgroud)
您必须引用并导入System.ComponentModel.DataAnnotations以获取KeyAttribute.更多信息可以在这里找到.
| 归档时间: |
|
| 查看次数: |
6064 次 |
| 最近记录: |