解决方案 »

  1.   

    sql  这个就没定义 就会报错啊.. string sql=""; 写个sql语句..
      

  2.   

    写了不行啊!关键是不管我把函数名改为什么,写到dc.的时候都有提示getUsers,却没有提示我写的函数名,这是为什么?非常不明白
      

  3.   

    如果这个代码不是你写的,首先排除文件丢失的可能。如果是你写的,那这个只能问你自己,天知道sql是什么。
      

  4.   

    using System;
    using System.Data;
    using System.Configuration;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;public partial class _Default : System.Web.UI.Page 
    {
        protected void Page_Load(object sender, EventArgs e)
        {
          
          
                DataAccess.Class1 dc = new DataAccess.Class1();
                string sql = @"Common.Class1.sql_geta";
                DataSet ds = dc.getUsers(sql);
                this.GridView1.DataSource = ds.Tables[0].DefaultView;
                this.GridView1.DataBind();
               }}using System;
    using System.Collections.Generic;
    using System.Text;namespace Common
    {
        public class Class1
        {
            public const string ConnectString = 
            "server=localhost;database=NorthWind;user=mjc;password=123;";        public const string sql_geta = "select*from Customers";        public const string table_geta = "Customers";
        }
    }using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Data.SqlClient;
    using System.Data;
    namespace DataAccess
    {       public class Class1
        {   SqlConnection cn = new SqlConnection(Common.Class1.sql_geta);
            SqlDataAdapter da;
            DataSet ds;
            public DataSet getUsers(string sql) 
           {   string sql =Common.Class1.sql_geta;
               SqlCommand cmd = new SqlCommand(sql , cn);
               da = new SqlDataAdapter(cmd);
               ds = new DataSet();
               da.Fill(ds, Common.Class1.table_geta);
               return ds;
            
            }    }
    }
      

  5.   

     using  Common;
      

  6.   

    应该是命名空间的问题
    namespace Common
    namespace DataAccess
    代码修改如下:
    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Data.SqlClient;
    using System.Data;
    using  Common;namespace DataAccess
    {       public class Class1
        {   SqlConnection cn = new SqlConnection(Common.Class1.sql_geta);
            SqlDataAdapter da;
            DataSet ds;
            public DataSet getUsers(string sql) 
           {   string sql =Common.Class1.sql_geta;
               SqlCommand cmd = new SqlCommand(sql , cn);
               da = new SqlDataAdapter(cmd);
               ds = new DataSet();
               da.Fill(ds, Common.Class1.table_geta);
               return ds;
            
            }    }
    }
      

  7.   

    还是不行,提示“getUsers”方法没有采用“1”个参数的重载。
      

  8.   

    呵呵,刚改错了
    你试试下面的
    using System;
    using System.Data;
    using System.Configuration;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using  Common;
    namespace DataAccess;

    public partial class _Default : System.Web.UI.Page 
    {
        protected void Page_Load(object sender, EventArgs e)
        {
          
          
                DataAccess.Class1 dc = new DataAccess.Class1();
                string sql = @"Common.Class1.sql_geta";
                DataSet ds = dc.getUsers(sql);
                this.GridView1.DataSource = ds.Tables[0].DefaultView;
                this.GridView1.DataBind();
               }}
      

  9.   

      using  namespace DataAccess;
      

  10.   

    我已经设置了:网站添加引用类库DataAccess,类库DataAccess添加引用类库Command
      

  11.   

    DataSet ds = dc.getUsers(sql);
    sql 哪来的
      

  12.   

    SqlConnection cn = new SqlConnection(Common.Class1.sql_geta);
    获取串
    应为
    SqlConnection cn = new SqlConnection(Common.Class1.ConnectString);
      

  13.   

       在使用一个变量之前要先声明。你将sql赋值为Common.Class1.sql_geta,这个值是固定不变的,函数getUsers根本不需要有参数。
       string sql;sql=Common.Class1.sql_geta;
      

  14.   

    程序中获取字符串连接是错误的,其他代码没有错误,我已经测试过了
    修改代码如下:using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Data.SqlClient;
    using System.Data;
    namespace DataAccess
    {       public class Class1
        {   
       //SqlConnection cn = new SqlConnection(Common.Class1.sql_geta);
    SqlConnection cn = new SqlConnection(Common.Class1.ConnectString);        SqlDataAdapter da;
            DataSet ds;
            public DataSet getUsers(string sql) 
           {   string sql =Common.Class1.sql_geta;
               SqlCommand cmd = new SqlCommand(sql , cn);
               da = new SqlDataAdapter(cmd);
               ds = new DataSet();
               da.Fill(ds, Common.Class1.table_geta);
               return ds;
            
            }    }
    }
      

  15.   

    还不对,提示“getUsers”方法没有采用“1”个参数的重载,我感觉关键的问题是不管我把函数名改为什么,写到dc.的时候都有提示getUsers,却没有提示我写的函数名,这是为什么?假如getUsers方法系统本身就有,那我写的dc.函数名怎么不能用?麻烦大家了
      

  16.   

    第一个 定义sql
    第二个 sql语句写正确 SELECT * FROM Table 记得词之间加空格
      

  17.   

    这里有错呀:string sql = @"Common.Class1.sql_geta";
    应该是string sql = Common.Class1.sql_geta;还有就是上面提到的,Common.Class1.sql_geta对应的字符串中是不是缺少空格呀。
      

  18.   

    DataAccess里面的如下内容:public DataSet getUsers(string sql) 
           {   string sql =Common.Class1.sql_geta;
    无法编译吧?要学会调试程序才可以呀。
      

  19.   

    using System;
    using System.Data;
    using System.Configuration;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;using System.Collections.Generic;
    using System.Text;
    namespace Common
    {
        public class Class1
        {
           // public const string ConnectString ="server=localhost;database=NorthWind;user=mjc;password=123;";        public  const  string connectionString="Data Source=2012-20130305KU;Initial Catalog=c#;Integrated Security=True" ;
            public const string sql_geta = "select * from Customers";

            public const string table_geta = "Customers";
        }
    }
    using System;
    using System.Data;
    using System.Configuration;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using System.Collections.Generic;
    using System.Text;
    using System.Data.SqlClient;namespace DataAccess
    {
        public class Class1
        {
          [color=#FF0000] // SqlConnection cn = new SqlConnection(Common.Class1.sql_geta);
            SqlConnection cn = new SqlConnection(Common.Class1.connectionString);

            SqlDataAdapter da;
            DataSet ds;
            public DataSet getUsers(string sql)
            {
                 sql = Common.Class1.sql_geta;
                SqlCommand cmd = new SqlCommand(sql, cn);
                da = new SqlDataAdapter(cmd);
                ds = new DataSet();
                da.Fill(ds, Common.Class1.table_geta);
                return ds;        }    }
    }
    [/color]
    界面代码:<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
        <title>无标题页</title>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            &nbsp;&nbsp;
            <asp:GridView ID="GridView1" runat="server">
            </asp:GridView>
        
        </div>
        </form>
    </body>
    </html>
    该界面的后台代码:
    using System;
    using System.Data;
    using System.Configuration;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;public partial class _Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {        DataAccess.Class1 dc = new DataAccess.Class1();
            string sql = @"Common.Class1.sql_geta";
            DataSet ds = dc.getUsers(sql);
            this.GridView1.DataSource = ds.Tables[0].DefaultView;
            this.GridView1.DataBind();
        }}
    Web.config文件
    <?xml version="1.0"?>
    <!-- 
        注意: 除了手动编辑此文件以外,您还可以使用 
        Web 管理工具来配置应用程序的设置。可以使用 Visual Studio 中的
         “网站”->“Asp.Net 配置”选项。
        设置和注释的完整列表在 
        machine.config.comments 中,该文件通常位于 
        \Windows\Microsoft.Net\Framework\v2.x\Config 中
    -->
    <configuration>
    <appSettings/>
    <connectionStrings>
    <add name="c#ConnectionString" connectionString="Data Source=2012-20130305KU;Initial Catalog=c#;Integrated Security=True" providerName="System.Data.SqlClient"/>
    </connectionStrings>
    <system.web>
    <!-- 
                设置 compilation debug="true" 将调试符号插入
                已编译的页面中。但由于这会 
                影响性能,因此只在开发过程中将此值 
                设置为 true。
            -->
    <compilation debug="true"/>
    <!--
                通过 <authentication> 节可以配置 ASP.NET 使用的 
                安全身份验证模式,
                以标识传入的用户。 
            -->
    <authentication mode="Windows"/>
    <!--
                如果在执行请求的过程中出现未处理的错误,
                则通过 <customErrors> 节可以配置相应的处理步骤。具体说来,
                开发人员通过该节可以配置
                要显示的 html 错误页
                以代替错误堆栈跟踪。        <customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
                <error statusCode="403" redirect="NoAccess.htm" />
                <error statusCode="404" redirect="FileNotFound.htm" />
            </customErrors>
            -->
    </system.web>
    </configuration>对应的表
    USE [c#]
    GO
    /****** 对象:  Table [dbo].[Customers]    脚本日期: 05/17/2013 19:59:27 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE TABLE [dbo].[Customers](
    [ID] [nchar](10) COLLATE Chinese_PRC_CI_AS NOT NULL,
    [name] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NULL,
     CONSTRAINT [PK_Customers] PRIMARY KEY CLUSTERED 
    (
    [ID] ASC
    )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
    ) ON [PRIMARY]
    这就是我调试成功的代码