为什么我不能在实体框架5中使用列数据注释?

时间:2013-07-31 07:28:34

标签: visual-studio-2010 entity-framework c#-4.0 entity-framework-5 data-annotations

我想使用Column数据注释,如下面的示例代码所示,但编译器(以及IntelliSense)似乎并不知道特定的数据注释。我在Visual Studio 2010中使用EF 5.我使用NuGet安装了EF 5。 RequiredMaxLength注释正在发挥作用。

using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;

namespace Model
{
    public class Destination
    {
        public int DestinationId { get; set; }
        [Required]
        public string Name { get; set; }
        public string Country { get; set; }
        [MaxLength(500)]
        public string Description { get; set; }
        [Column(TypeName="image")]
        public byte[] Photo { get; set; }
        public List<Lodging> Lodgings { get; set; }
    }
}

我错过了什么?

1 个答案:

答案 0 :(得分:4)

列位于:

using System.ComponentModel.DataAnnotations.Schema;

以下代码:

using System.ComponentModel.DataAnnotations.Schema;
using System.Data.Entity;

namespace ConsoleApplication2
{
    public class MyContext : DbContext
    {
        public IDbSet<Entity> Entities { get; set; }
    }

    public class Entity
    {
        public int Id { get; set; }
        [Column(TypeName = "image")]
        public byte[] Photo { get; set; }
    }
}

产生

enter image description here