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;
}
}
...全文
166 点赞 收藏 11
写回复
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楼一针见血
回复 点赞
发动态
发帖子
C#
创建于2007-09-28

8.5w+

社区成员

64.0w+

社区内容

.NET技术 C#
社区公告
暂无公告