C# 问题 各位帮忙看看那里的问题

wenkunvip 2012-11-05 04:51:08
using System;
using System.Text;
using System.Data.SqlClient;
using System.Collections;
using System.Data;

public class clsDBTransaction : WindowsApplication1.IclsDBTransaction
{
ArrayList arParameters;
string spName;
string connectionString = "";

public clsDBTransaction()
{
arParameters = new ArrayList();
}

string getConnectionString()
{
connectionString = "Data Source=A0RUP4EJAFTWWK9;Initial Catalog=g4hrp;Persist Security Info=True;User ID=sa;password=123";
}


/// <summary>
/// Uses a custom connection string
/// </summary>
/// <param name="spName">Name of the stored procedure to be executed</param>
/// <param name="strConnectionString">Connection string to the database</param>
public clsDBTransaction(string spName, string strConnectionString)
{
arParameters = new ArrayList();
this.spName = spName;
connectionString = strConnectionString;
}


/// <summary>
/// Uses the Eclips connection string
/// </summary>
/// <param name="spName">Name of the stored procedure to be executed</param>
public clsDBTransaction(string spName)
{
arParameters = new ArrayList();
this.spName = spName;
connectionString = getConnectionString();

}



/// <summary>
/// Create parameters to put in the stored procedure
/// </summary>
/// <param name="ParamType">Ex: Varchar, int , DateTime</param>
/// <param name="ParamName">Name of the parameter (Without '@' sign)</param>
/// <param name="ParamValue">Value of the parameter</param>
public void AddParam(SqlDbType ParamType, string ParamName, string ParamValue)
{
SqlParameter prm = new SqlParameter("@" + ParamName, ParamType);
prm.Value = ParamValue;
arParameters.Add(prm);
}

/// <summary>
/// Execute stored procedures with multiple parameters
/// </summary>
/// <param name="spName">Name of the stored procedure</param>
/// <param name="parameters">Pass parameters in an ArrayList</param>
public void Execute()
{
using (SqlConnection conn = new SqlConnection(connectionString))
{
SqlCommand cmd;
conn.Open();
cmd = new SqlCommand(spName, conn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandTimeout = 0;

if (arParameters != null)
{
foreach (SqlParameter pr in arParameters)
cmd.Parameters.Add(pr);
}

cmd.ExecuteNonQuery();
conn.Close();
}
}
/// <summary>
/// Execute stored procedures with multiple parameters
/// </summary>
/// <returns>Returns a dataset</returns>
public DataSet ExecuteReader()
{
DataSet dsReturnedValue = new DataSet();
using (SqlConnection conn = new SqlConnection(connectionString))
{
SqlCommand cmd;
conn.Open();
cmd = new SqlCommand(spName, conn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandTimeout = 0;

if (arParameters != null)
{
foreach (SqlParameter pr in arParameters)
cmd.Parameters.Add(pr);
}
SqlDataAdapter adapter = new SqlDataAdapter(cmd);
adapter.Fill(dsReturnedValue);

conn.Close();
}
return dsReturnedValue;
}
}
...全文
183 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
sunbinbin1991 2012-11-06
  • 打赏
  • 举报
回复
引用 6 楼 davy_john 的回复:
你的错误提示,显示你的函数没有 return; string getConnectionString() { connectionString = "Data Source=A0RUP4EJAFTWWK9;Initial Catalog=g4hrp;Persist Security Info=True;User ID=sa;passwo……
赞同!
xieniuniu219 2012-11-06
  • 打赏
  • 举报
回复
你的getConnectionString没有返回值,程序编译都有问题的。
davy_john 2012-11-06
  • 打赏
  • 举报
回复
你的错误提示,显示你的函数没有 return; string getConnectionString() { connectionString = "Data Source=A0RUP4EJAFTWWK9;Initial Catalog=g4hrp;Persist Security Info=True;User ID=sa;password=123"; return connectionString; } 红色标注的即可;
wenkunvip 2012-11-06
  • 打赏
  • 举报
回复
错误提示: 错误 1 “clsDBTransaction.getConnectionString()”: 并非所有的代码路径都返回值 D:\C#工程\WindowsApplication1\WindowsApplication1\clsDBTransaction.cs 18 12 WindowsApplication1
XBodhi. 2012-11-06
  • 打赏
  • 举报
回复
Persist Security Info=True 这个只有 windows 模式的菜这么写
XBodhi. 2012-11-06
  • 打赏
  • 举报
回复
connectionString = "Data Source=A0RUP4EJAFTWWK9;Initial Catalog=g4hrp;Persist Security Info=True;User ID=sa;password=123"; 你这个写错了 应该是: Data Source ="host或 IP地址";Initial Catalog ="DBNAME";User ID= SA;Password=123; 也可以是 Server="host或 IP地址";DataBase ="DBNAME";username="";pwd="";
只在此山中 2012-11-06
  • 打赏
  • 举报
回复
错误提示是什么?
wenkunvip 2012-11-06
  • 打赏
  • 举报
回复
大神些 帮忙看看是那里写的有问题
yijianlishi 2012-11-06
  • 打赏
  • 举报
回复
getConnectionString没有返回值
mingchou1990 2012-11-06
  • 打赏
  • 举报
回复
嗯,楼上正解,获取连接字符串函数没有给返回值
woof_1128 2012-11-06
  • 打赏
  • 举报
回复
错误提示已经很明确了,6楼一针见血

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧