在ADO.NET中创建ODBC reader时,如下所示:
//using bla bla bla
using System.Data.Odbc;
//some code
OdbcDataReader rdr = cmd.ExecuteReader();
//rest of the code
我收到错误:
OdbcConnection不包含' ExecuteReader'的定义。没有扩展方法' ExecuteReader'接受类型' OdbcConnection'的第一个参数。可以找到(你错过了使用指令或汇编引用吗?
我100%确定我没有使用指令或汇编参考,我已经自己添加了,所以为什么它不能识别这个方法?
编辑:完整的后端代码和aspx代码:
后端C#代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Data.SqlClient;
using System.Windows.Forms;
using System.Data.Odbc;
namespace WebApp1
{
public partial class Test : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
using (SqlConnection cnct = new SqlConnection("Server=x.x.x.x;User ID=xx;Password=xx;Database=xxxx;"))
{
try
{
cnct.Open();
using (SqlCommand cmd = new SqlCommand("select codcli from client", cnct))
{
SqlDataReader rdr = cmd.ExecuteReader();
while (rdr.Read())
{
string code = rdr.GetString(1);
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
}
}
ASPX页面代码:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Test.aspx.cs" Inherits="WebApp1.Test" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<table runat="server">
<asp:Repeater ID="repeater" runat="server">
<HeaderTemplate>
<tr class="Header">
<td>Code</td>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td>
<%# Eval("code") %>
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
</table>
</body>
</html>
PS:我很抱歉从一开始就不包括整个代码,因为我是StackOverFlow的新手,谢谢你耐心等待我