实体框架 5 - 映射枚举 - 应用程序中'/'服务器错误。指定的类型成员'xxx'在 LINQ to 实体中不受支持



我一直有枚举不映射在实体框架5(它支持枚举)的问题。

当我调用results.Where(r => r.Category = LogEntry.LogCategory.ERROR)时,结果是一个IQueryable,我得到指定的类型成员LogCategory不支持LINQ到实体。

当我运行迁移时,Up()方法不映射表。

我的模型是这样的

public partial class LogEntry
{
public enum HttpMethod
{
    GET,
    POST,
    PUT,
    DELETE
};
public enum LogCategory
{
    PAGE_VISIT,
    TRANSACTION,
    AUTHENTICATION,
    FAILED_AUTHENTICATION,
    EXCEPTION,
    INPUT_VALIDATION_ERROR,
    SPECIFICATION_FAILURE,
    SYSTEM,
    PAGE_NOT_FOUND,
    UNAUTHORIZED_ACCESS
};
    public int LogId { get; set; }
    //public int? UserId { get; set; }
    //public virtual User user { get; set; }
    //public int? ForumId { get; set; }
    //public virtual Forum forum { get; set; }
    public DateTime DateTime { get; set; }
    public string IPAddress { get; set; }
    public string ActiveRole { get; set; }
    public string Title { get; set; }
    public string Details { get; set; }
    public LogCategory Category { get; set; }
    public String Url { get; set; }
    public HttpMethod Method { get; set; }
    public Boolean IsAjaxRequest { get; set; }
    public String UserAgent { get; set; }
}
有谁知道是什么问题吗?

原来问题很简单。EF不喜欢enum成为LogEntry类的一部分。我把它搬到教室外面,突然它就好了。

我想我应该张贴这个以防其他人有同样的问题,因为没有任何东西指出我在正确的方向已经在SO!

相关内容

  • 没有找到相关文章

最新更新