1

我下载了Asp.NET MVC 3 EntityFramework代码在vb.net中的第一个示例应用程序,并修改了连接字符串,因为我没有SQL Server Express Edition来尝试它与SQL Server 2008网络版实体框架4.1提供程序没有返回ProviderManifestToken字符串异常

<add name="ApplicationServices" 
     connectionString="Server=MyPC\Sql2008;Trusted_Connection=True;MultipleActiveResultSets=True" 
     providerName="System.Data.SqlClient" /> 

当我尝试运行应用程序,ProviderIncompatibleException抛出异常。以下错误显示在浏览器窗口中。

'/'应用程序中的服务器错误。

建立到SQL Server的连接时发生网络相关或实例特定的错误。服务器未找到或无法访问。验证实例名称是否正确,并将SQL Server配置为允许远程连接。 (提供程序:Shared Memory Provider,错误:40 - 无法打开与SQL Server的连接)

说明:执行当前Web请求期间发生未处理的异常。请查看堆栈跟踪以获取有关该错误的更多信息以及源代码的位置。

异常详细信息:System.Data.SqlClient.SqlException:建立到SQL Server的连接时发生网络相关或实例特定的错误。服务器未找到或无法访问。验证实例名称是否正确,并将SQL Server配置为允许远程连接。 (提供程序:共享内存提供程序,错误:40 - 无法打开到SQL Server的连接)

源错误:

第24行: 第25行: 第26行:@For每个项目在示范 线27:@ 第28行:

源文件:C:\ Documents和Settings \ Shishir舒克拉\我的文档\下载\ CodeFirstEFVB \ CodeFirstMVC \查看\博客\ Index.vbhtml行:26

连接字符串我已经使用完美的作品与我的ASP。 net webforms应用程序以及Winforms应用程序。

请帮助我尽快摆脱这个问题,因为我刚刚切换到MVC。

+0

您需要添加'初始Catalog'连接字符串。通过[连接字符串](http://www.connectionstrings.com/sql-server-2008)并找到合适的一个 – Eranga

+0

是Sql2008名称的SQL实例吗?这个错误也会引发无效的连接字符串。 –

回答

-1

您的连接字符串是一个有效的SQL连接字符串,但您需要一个实体框架连接字符串。

当您创建EF模型时,从头创建一个新的连接字符串。这将解决这个问题。

您可以查看web.config中的新连接,并且您将看到实体连接包含作为连接字符串的一部分的其他元数据,并包装SQL连接字符串。

UPDATE:

有效实体的连接字符串将是这个样子:

<add name="MyDatabaseEntities" connectionString="metadata=res://*/Models.MyDatabase.csdl|res://*/Models.MyDatabase.ssdl|res://*/Models.MyDatabase.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=SERVER;initial catalog=MyDatabase;persist security info=True;user id=userid;password=password;multipleactiveresultsets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />

但是,你应该让Visual Studio中建立连接字符串为您服务。

+0

你能否给我一个EntityFramework连接字符串示例。 –

+1

这是CodeFirst不需要的 –

+1

我已经在Scott Gu的博客中读到,在使用Entity Framewrok时,我们不必使用csdla,ssdl文件。其实我使用CodeFirst方法 –

0

您能否提供您下载的项目的链接?

您正在使用Windows身份验证,IIS帐户是否有权限到数据库?

最后,验证您的dbContext类是否被命名为“ApplicationServices”。否则,您可能需要使用接受nameOrConnectionString的构造函数。

+0

感谢您的回复,问题是由于连接字符串 –

2

的问题是与连接字符串,我改成了这一点,它的工作..

<add name="DBCon" connectionString="Data Source=.\SQL2008;Initial Catalog=TestDB;Integrated Security=True" providerName="System.Data.SqlClient" /> 
相关问题