控制器脚手架问题

时间:2015-08-21 06:31:36

标签: c# asp.net-mvc entity-framework

我试图为EF的以下模型搭建一个控制器,但我收到了:

  

无法检索' Project.Models.ItemModel'的元数据。

     

值不能为空。

     

参数名称:entitySet'

它是否试图从某个地方检索某些东西但是不能?

ItemModel

public class ItemModel
{
    public class ItemPicture
    {
        [Key, ForeignKey("ItemModel")]
        public virtual int ItemID {get;set;}

        public HttpPostedFileBase Image { get; set; }

        public virtual ItemModel ItemModel { get; set; }
    }


    [Key]
    public int ItemID { get; set; }

    [Required(ErrorMessage ="{0} is required.")]
    [Display(Name ="Item Name")]
    public string ItemName { get; set; }

    [Required(ErrorMessage = "{0} is required.")]
    [Display(Name = "Item Description")]
    [DataType(DataType.MultilineText)]
    public string ItemDesc { get; set; }

    [Required(ErrorMessage = "{0} is required.")]
    [Display(Name = "Item Price")]
    public decimal ItemPrice { get; set; }

    public virtual ItemPicture Picture { get; set; }

    [Required(ErrorMessage = "{0} is required.")]
    [Display(Name = "Enable Front Feature")]
    public bool FrontFeature { get; set; }
}

1 个答案:

答案 0 :(得分:1)

我自己试过......不要认为你应该将HttpPostedFileBase存储为模型的属性,至少不要通过EntityFramework映射它并让它自动搭建。如果你考虑一下 - 你认为这个属性类型将映射到哪些数据库字段?

如果要将二进制数据实际存储在数据库中,请使用以下命令:

public byte[] File { get; set; }