Asp.net mvc 4 密钥attachdbfilename mvc 4的值无效

Asp.net mvc 4 密钥attachdbfilename mvc 4的值无效,asp.net-mvc-4,Asp.net Mvc 4,我正在做一个非常基本的MVC4项目。我有一个简单的模型和一个dbcontext。我试图从表单中获取输入,并使用dbcontext保存它 这是我的密码, 在控制器中 public ActionResult FormShow(Models.bullseye sampbe) { if (ModelState.IsValid) { var db = new bullseyeDataContext(); db.

我正在做一个非常基本的MVC4项目。我有一个简单的模型和一个dbcontext。我试图从表单中获取输入,并使用dbcontext保存它

这是我的密码, 在控制器中

    public ActionResult FormShow(Models.bullseye sampbe)
    {
        if (ModelState.IsValid)
        {
            var db = new bullseyeDataContext();
            db.bullseyes.Add(sampbe);
            db.SaveChanges();

            return RedirectToAction("FormShow");
        }

        return FormShow();
    }
在dbcontext中

public class bullseyeDataContext : DbContext 
{
    public DbSet<bullseye> bullseyes { get; set; }

    static bullseyeDataContext()
    {
        Database.SetInitializer(new DropCreateDatabaseAlways<bullseyeDataContext>());
    }
}
公共类bullseydataContext:DbContext
{
公共DbSet bullseys{get;set;}
静态BullseedataContext()
{
SetInitializer(新的DropCreateDatabaseAlways());
}
}
连接字符串是

<add name="MvcFourFirstTouch.Models.bullseyeDataContext"
connectionString="Data Source=(LocalDb)\v11.0;
Integrated        Security=SSPI;AttachDBFilename=|DataDirectory|\MvcFourFirstTouch.Models.bullseyeDataContext.mdf" providerName="System.Data.SqlClient" />


当我提交表单时,我得到的密钥attachdbfilename的值无效。问题出在哪里???

更新

问题在于您的连接字符串
AttachDBFileName
不喜欢您为其指定的值。可能是数据库名称的问题,或者是LocalDB的问题,或者是路径中缺少/存在额外的
\


但是,如果您没有明确的理由使用
AttachDBFileName
,那么我建议将
AttachDBFileName=[…]替换为
Initial Catalog=yourDBName
。通过这种方式可以避免很多问题:)

是否有任何理由专门使用
AttachDbFileName
?如果没有,请将
AttachDbFileName=[…].mdf
更改为
Initial Catalog=yourDBName
。.nice:D,这样很好,谢谢。。。我应该将您的答案标记为已接受还是编辑,然后接受:s