我在C#2010中创建了一个带有Entity框架的网站,同样我还添加了一个Web服务并在服务器上部署了它。
现在我的网站运行良好,但是当我打开网页服务时,asmx页面会打开,但需要数据库连接的方法无效。
我在我的网络服务中使用了项目dll进行连接。
现在,每当我运行连接到数据库的Web服务方法时,它都会显示消息PAGE NOT FOUND。
请建议
异常详情:
System.Data.EntityException:基础提供程序在Open上失败。 ---> System.Data.SqlClient.SqlException:建立连接时发生与网络相关或特定于实例的错误 SQL Server。服务器未找到或无法访问。校验 实例名称正确且SQL Server配置为 允许远程连接。 (提供者:命名管道提供商,错误:40 - 无法打开与SQL Server的连接)
答案 0 :(得分:0)
web.config文件需要Model的连接字符串,以及一些零碎的部分。确保它包含以下内容,并更改连接字符串以拥有您自己的服务器,数据库和身份验证详细信息:
<configSections>
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</configSections>
<connectionStrings>
<add name="YourModelNameHere" connectionString="metadata=res://*/RCMarketModel.csdl|res://*/YourModelNameHere.ssdl|res://*/YourModelNameHere.msl;provider=System.Data.SqlClient;provider connection string="Server=Your Server Name;Database=Your Database Name;Integrated Security=SSPI;Trusted_Connection=False;Encrypt=True;Connection Timeout=30;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
</connectionStrings>
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
<parameters>
<parameter value="v11.0" />
</parameters>
</defaultConnectionFactory>
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
</providers>
</entityFramework>
这些可能是从您的网站web.config文件中复制的,而不是从上面复制的,但您需要这三个部分:
<ConfigSections>
,<connectionStrings>
和<entityFramework>