2012-02-11 55 views
0

所以我正在浏览这个教程,看起来很简单,但我似乎无法使其工作。 http://msdn.microsoft.com/en-us/data/gg685489不支持的关键字:'name'

这是我在运行我的应用程序时收到的错误:“不支持关键字:'name'。”

现在我看了其他类似于我的帖子,它似乎像连接字符串是问题。所以我仔细观察,但看不到任何真正的差异。

<add name="BBCommercialSolutionsEntities" 
    connectionString="metadata=res://*/Models.BBCommercialSolutions.csdl|res://*/Models.BBCommercialSolutions.ssdl|res://*/Models.BBCommercialSolutions.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=MYSOURCENAME;initial catalog=MYDATABASENAME;multipleactiveresultsets=True;App=EntityFramework&quot;" 
    providerName="System.Data.EntityClient" /> 

在我的CompanyController.cs类中,使用.ToList()时收到错误。

public ActionResult Index() 
    { 
     //return View(); 
     using (var db = new BBCommercialSolutionsEntities()) 
     { 
      //return View(db.BBCSCompanies.ToList()); 
      var tbl = db.BBCSCompanies; 

      var list = tbl.ToList(); 

      return View(tbl.ToList()); 
     } 
    } 

和 “新BBCommercialSolutionsEntities()” 去我的自动生成的模板

public BBCommercialSolutionsEntities() 
     : base("name=BBCommercialSolutionsEntities") 
    { 
    } 

任何想法,思想,解释,咆哮会有所帮助。

+0

你为什么要访问数据在你的控制器? – 2012-02-11 00:08:35

+0

@AntonyScott - 他可能只是在测试和搞乱。他正在接受一个教程,所以很可能。 – 2012-02-11 00:09:57

+0

嗯,公平点。 – 2012-02-11 00:10:59

回答

1

只需使用BBCommercialSolutionsEntities

public BBCommercialSolutionsEntities() : base("BBCommercialSolutionsEntities") 
{ 
} 
+0

感谢您的回复。我现在得到这个错误:“无法找到请求的.Net框架数据提供程序,它可能没有安装。”我将不得不在论坛上多做点事。 – thatstevedude 2012-02-11 00:24:18

+0

您在连接字符串提供商 的providerName =“System.Data.EntityClient” 请确保您有正确安装了.NET Framework。您正在使用EF Code First。从官方发布的Aparat有几个EF版本不幸地浮动:( – Digvijay 2012-02-11 10:57:41

+0

我做了一些进一步的研究,并使用了错误的框架。我在这里下载了正确的框架:http://blogs.msdn.com/b/adonet/archive/ 2011/04/11/ef-4-1-released.aspx。现在一切似乎都很顺利,谢谢! – thatstevedude 2012-02-13 22:29:21