实体框架错误关键字不支持:提供程序\r\n连接字符串
Posted
技术标签:
【中文标题】实体框架错误关键字不支持:提供程序\\r\\n连接字符串【英文标题】:Entity Framework error Keyword not supported: provider \r\nconnection string实体框架错误关键字不支持:提供程序\r\n连接字符串 【发布时间】:2016-12-03 18:55:27 【问题描述】:我使用实体框架制作了MVC API
。它在我的 PC 上作为 Visual Studio 上的本地主机运行良好
当我发布它并在 myasp.net 上托管 api 和数据库以对其进行测试并替换此连接字符串时:
<add name="ENGeekEntities" connectionString="metadata=res://*/Models.operation.csdl|res://*/Models.operation.ssdl|res://*/Models.operation.msl;provider=System.Data.SqlClient;provider connection string="data source=.\SQLEXPRESS;initial catalog=ENGeek;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
与站点连接字符串:
<add name="ENGeekEntities" connectionString="metadata=res://*/Models.operation.csdl|res://*/Models.operation.ssdl|res://*/Models.operation.msl;provider=System.Data.SqlClient;provider
connection string="Data Source=SQL5025.myASP.NET;Initial Catalog=DB_A0A604_ENGeek;User Id=DB_A0A604_ENGeek_admin;Password=MyPassword;App=EntityFramework"" providerName="System.Data.EntityClient" />
当我尝试获取数据时,它给了我这个错误:
"Message":"发生错误。","ExceptionMessage":"Keyword not supported: 'provider \r\nconnection string'"
任何想法!
【问题讨论】:
编辑您的问题并添加内部异常 我应该怎么做才能得到内部异常 点击查看详情->发生错误或异常时的Innerexception 我用另一种方式管理它它给出:消息":"发生错误。","ExceptionMessage":"不支持关键字:'提供者\r\n连接字符串 【参考方案1】:解决了。 有两个问题。 第一个问题是序列化 IEmunerable,我用 javascriptSerializer 替换了它。 第二个通过添加单引号来解决就像提到的
【讨论】:
【参考方案2】:由于连接字符串中的&quot;
,您收到此错误的原因。
将&quot;
替换为单引号'
,如下所示。
<add name="ENGeekEntities" connectionString="metadata=res://*/Models.operation.csdl|res://*/Models.operation.ssdl|res://*/Models.operation.msl;provider=System.Data.SqlClient;provider
connection string='Data Source=SQL5025.myASP.NET;Initial Catalog=DB_A0A604_ENGeek;User Id=DB_A0A604_ENGeek_admin;Password=MyPassword;App=EntityFramework'" providerName="System.Data.EntityClient" />
【讨论】:
&quot;
有问题吗!!
如果您将connection string
传递给类对象,请确保它有单引号,并且如果您从.config
文件获取连接,那么可以使用&quot;
转义序列。
@RahulNikate 我不相信应该有任何区别,任何支持这一点的链接。我很好奇,我从来不知道
@ShekharPankaj Here's the reference for it以上是关于实体框架错误关键字不支持:提供程序\r\n连接字符串的主要内容,如果未能解决你的问题,请参考以下文章