我在交友网站初学者,我只在MSDN学到的东西,但现在当我尝试做一个非常简单的网站,我有这个错误错误在数据绑定数据库,Web表单
“无法找到所需的.Net框架数据提供程序,它可能没有安装。“
http://i.stack.imgur.com/RV5qY.jpg
步骤,随后创建的网站>新网站>空缺网站>添加新的web窗体>拖GridView控件的页面>添加新的数据源(SDF格式)上。
测试查询运行良好,但是当我尝试运行网页时,出现此错误,我花了整整一天的时间搜索解决方案(但它们似乎不再有效,或者适用于较旧版本)。 我使用的是Vs2010的终极版,安装了sqlServer compact edition 2008 SP2。 下面是Web.config文件:
<configuration>
<connectionStrings>
<add name="ConnectionString" connectionString="Data Source=C:\Users\TarunG\Documents\Visual Studio 2010\WebSites\WebSite1\App_Data\Database1.sdf"
providerName="System.Data.SqlServerCe.Client.3.5" />
</connectionStrings>
<system.web>
<compilation debug="true" targetFramework="4.0"></compilation>
</system.web>
</configuration>
该数据库只包含一个表 - 结果1。 Default.aspx文件:
<body>
<form id="form1" runat="server">
<div>
</div>
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
DataKeyNames="Roll No." DataSourceID="SqlDataSource1">
<Columns>
<asp:BoundField DataField="Roll No." HeaderText="Roll No." ReadOnly="True"
SortExpression="Roll No." />
<asp:BoundField DataField="Category" HeaderText="Category"
SortExpression="Category" />
<asp:BoundField DataField="Rank" HeaderText="Rank" SortExpression="Rank" />
<asp:BoundField DataField="Registration No." HeaderText="Registration No."
SortExpression="Registration No." />
<asp:BoundField DataField="Name" HeaderText="Name" SortExpression="Name" />
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:ConnectionString %>"
ProviderName="<%$ ConnectionStrings:ConnectionString.ProviderName %>"
SelectCommand="SELECT * FROM [Result1]"></asp:SqlDataSource>
</form>
</body>
的machine.config:
<add name="SQL Server Compact Edition Data Provider" invariant="System.Data.SqlServerCe" description=".NET Framework Data Provider for Microsoft SQL Server Compact Edition" type="System.Data.SqlServerCe.SqlCeProviderFactory, System.Data.SqlServerCe, Version=9.0.242.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91"/>
<add name="Odbc Data Provider" invariant="System.Data.Odbc" description=".Net Framework Data Provider for Odbc" type="System.Data.Odbc.OdbcFactory, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<add name="OleDb Data Provider" invariant="System.Data.OleDb" description=".Net Framework Data Provider for OleDb" type="System.Data.OleDb.OleDbFactory, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<add name="OracleClient Data Provider" invariant="System.Data.OracleClient" description=".Net Framework Data Provider for Oracle" type="System.Data.OracleClient.OracleClientFactory, System.Data.OracleClient, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<add name="SqlClient Data Provider" invariant="System.Data.SqlClient" description=".Net Framework Data Provider for SqlServer" type="System.Data.SqlClient.SqlClientFactory, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<add name="Microsoft SQL Server Compact Data Provider" invariant="System.Data.SqlServerCe.3.5" description=".NET Framework Data Provider for Microsoft SQL Server Compact" type="System.Data.SqlServerCe.SqlCeProviderFactory, System.Data.SqlServerCe, Version=3.5.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91"/>
<add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.3.6.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
<add name="Microsoft SQL Server Compact Data Provider" invariant="System.Data.SqlServerCe.3.5" description=".NET Framework Data Provider for Microsoft SQL Server Compact" type="System.Data.SqlServerCe.SqlCeProviderFactory, System.Data.SqlServerCe, Version=3.5.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91"/>
但问题是,数据库是在sdf格式,将不会创建一个问题 – TarunG 2011-06-03 18:08:14
我已经安装了Microsoft SQL Server 2008(它没有指定它是哪个版本)。我是否还要下载Express版本? – TarunG 2011-06-03 18:16:55
如果你已经安装了SS2008,那么你很好。你可能只是有一个连接字符串问题。您需要知道服务器的名称和SS2008实例的名称(如果有的话)。然后,您可以正确构建您的连接字符串: – 2011-06-03 18:38:43