using System;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;namespace news
{
    public class SqlClass
    {
        protected string MyConnString;
        public SqlConnection Open()
        {
           SqlConnection MyConn = new SqlConnection(MyConnString);
            MyConn.Open();
            return (MyConn);
        }
        public SqlDataReader GetDataReader(string CommandString)
        {
            SqlCommand CmdCommand = new SqlCommand(CommandString.MyConn);
            SqlDataReader MyDataReader = CmdCommand.ExecuteReader();
            return MyDataReader;
        }
        public DataSet GetDataSet(string CommandString, string TableName)
        {
            SqlDataAdapter adAdapter = new SqlDataAdapter();
            adAdapter.SelectCommand = new SqlCommand(CommandString.MyConn);
            DataSet dsDataSet = new DataSet();
            adAdapter.Fill(dsDataSet.TableName);
            return dsDataSet;
        }      
        public String AddUser(string UserName, string password)
       {
         SqlConnection myConnection=new SqlConnection(ConfigurationSettings.AppSettings["ConnectionString"]);
         SqlCommand myCommand=new SqlCommand("AddUser",myConnection);
         myCommand.CommandType=CommandType.StoredProcedure;
         SqlParameter parameterUserName=new SqlParameter("@UserName",SqlDbType.NVarChar,20);
         parameterUserName.Value=UserName;
         myCommand.Parameters.Add(parameterUserName);
         SqlParameter parameterPassword=new SqlParameter("@pass",SqlDbType.NVarChar,20);
         parameterPassword.Value=password;
         myCommand.Parameters.Add(parameterPassword);
         SqlParameter parameterID=new SqlParameter("@ID",SqlDbType.Int,4);
         parameterID.Direction = ParameterDirection.Output;
         myCommand.Parameters.Add(parameterID);
        try
        { 
        myConnection.Open();
        myCommand.ExecuteNonQuery();
        myConnection.Close();
        int UserId=(int)parameterID.Value;
        return UserId.ToString();       }
        catch
      {
       return String.Empty;
      }
    }
    }
}
错误提示是错误 48 “string”不包含“MyConn”的定义,并且找不到可接受类型为“string”的第一个参数的扩展方法“MyConn”(是否缺少 using 指令或程序集引用?)错误 50 “System.Data.DataSet”不包含“TableName”的定义,并且找不到可接受类型为“System.Data.DataSet”的第一个参数的扩展方法“TableName”(是否缺少 using 指令或程序集引用?) C:\Documents and Settings\花群\桌面\C++\NEWS\news\SqlClass.cs 36 38 news求解释。。

解决方案 »

  1.   

    SqlCommand CmdCommand = new SqlCommand(CommandString.MyConn);
    根本就不通
    修改成 SqlCommand CmdCommand = new SqlCommand(SqlClass.MyConn);
    adAdapter.Fill(dsDataSet.TableName);
    修改成
    adAdapter.Fill(dsDataSet[TableName]);程序还有好多错,自己慢慢改一改。基本语法掌握么?
      

  2.   

     public SqlDataReader GetDataReader(string CommandString)
    CommandString 是一个string类型的参数 string类型中并没有MyConn属性或者字段,
    adAdapter.Fill(dsDataSet.TableName);
    这个fill方法中只填写 dataset的对象就行 也就是dsDataSet。
      

  3.   

    恩,程序我已经改好了。这个SqlCommand CmdCommand = new SqlCommand(CommandString.MyConn);修改成
    SqlCommand CmdCommand = new SqlCommand(CommandString,MyConn);
    下面那个也是一样。。
    这样调试是通过了,不知道对不对。