Asp.net mvc mvc4:从数据库获取提供程序信息时出错
尝试将数据写入数据库时出错。 我正在使用sqlservercompact 4.0,并已从nuget软件包安装entityframework.sqlservercompact。 这是我安装的参考资料 编辑:根据回答,我已更改了提供程序名称,但出现新错误,显示Asp.net mvc mvc4:从数据库获取提供程序信息时出错,asp.net-mvc,asp.net-mvc-4,Asp.net Mvc,Asp.net Mvc 4,尝试将数据写入数据库时出错。 我正在使用sqlservercompact 4.0,并已从nuget软件包安装entityframework.sqlservercompact。 这是我安装的参考资料 编辑:根据回答,我已更改了提供程序名称,但出现新错误,显示无法找到请求的.Net Framework数据提供程序。它可能未安装。 public class PortalContext : DbContext { public PortalContext() :
无法找到请求的.Net Framework数据提供程序。它可能未安装。
public class PortalContext : DbContext
{
public PortalContext() : base("AdminPortal")
{
}
public DbSet<RegisterModel> Users { get; set; }
}
在控制器中,我有
[HttpPost]
public ActionResult Register(RegisterModel user)
{
if (ModelState.IsValid )
{
var regUser = _db.Users.Create();//error at this line
regUser.UserName = user.UserName;
regUser.Password = user.Password;
_db.Users.Add(regUser);
_db.SaveChanges();
}
return RedirectToAction("Index");
}
SQL Server Compact没有为嵌入式数据库使用
System.Data.SqlClient
提供程序,它使用了System.Data.SqlServerCe
不是吗?这是SQL Server Compact数据库的正确格式吗?例如,您不包括任何安全信息。另外,我不确定这是否是正确的提供程序名称。正如您所提到的,我更改了提供程序名称,但现在错误显示无法找到请求的.Net Framework数据提供程序。它可能没有安装。
这是否意味着我没有安装数据库?因为我知道这里可能有更多的错误。在这里查看一些指导。
[HttpPost]
public ActionResult Register(RegisterModel user)
{
if (ModelState.IsValid )
{
var regUser = _db.Users.Create();//error at this line
regUser.UserName = user.UserName;
regUser.Password = user.Password;
_db.Users.Add(regUser);
_db.SaveChanges();
}
return RedirectToAction("Index");
}