小编use*_*730的帖子

必须是不可为空的才能用作参数'T'

我正在尝试使用自己的对象类型创建Code First类并获取此错误:

.MTObject'必须是不可为空的值类型才能在泛型类型或方法' System.Data.Entity.ModelConfiguration.Configuration.StructuralTypeConfiguration<TStructuralType>.Property<T>(System.Linq.Expressions.Expression<System.Func<TStructuralType,T>>)' 中将其用作参数'T '

有没有办法声明我的类属性来解决这个错误?

代码如下:

// Simple Example

public class MTObject
{
    public string Object { get; set; }

    public MTObject()
    {

    }
}

public class Person
{
    public decimal Id { get; set; }

    //public string Name { get; set; }

    public MTObject Name { get; set; }

    public Int32 Age { get; set; }
}

public class PersonConfiguration : EntityTypeConfiguration<Person>
{
    public PersonConfiguration() : base()
    {
        HasKey(p => p.Id);
        Property(p => p.Id).HasColumnName("ID").HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity);
        Property(p …
Run Code Online (Sandbox Code Playgroud)

.net c# entity-framework code-first

6
推荐指数
1
解决办法
8364
查看次数

标签 统计

.net ×1

c# ×1

code-first ×1

entity-framework ×1