我有一个从数据库自动生成的实体框架模型。 SessionValue列的数据库已更改为varbinary(max)。该模型使用如下所示:
public partial class Session
{
public int SessionID { get; set; }
public string SessionKey { get; set; }
public string SessionValue { get; set; }
public System.DateTime SessionExpiryDate { get; set; }
}
我手动在部分文件中将其更改为如下形式:
public partial class Session
{
public int SessionID { get; set; }
public string SessionKey { get; set; }
public byte[] SessionValue { get; set; }
public System.DateTime SessionExpiryDate { get; set; }
}
因此,基本上我将SessionValue从字符串更改为字节数组。现在,当我运行我的MVC.NET应用程序时,它无法启动,并显示以下错误:
HTTP错误403.14-禁止 Web服务器被配置为不列出此目录的内容。
如果我撤消更改,一切都会恢复。我该如何调试呢?它甚至没有在Global.asax中发生任何事件。感觉好像Entity Framework应该在后台自动执行某些工作-但这不是因为Model属性视图不允许我将其映射到Type字节[]。
请有人帮忙!
答案 0 :(得分:0)
在这里找到答案: EntityFramework database first - type mapping - map binary(8) from SQL to int in C#
需要将Model属性的Type设置为Binary-我正在寻找byte []。那是正确的陷阱!进行此更改后,更新了模型,并且运行良好。终于!