C# webservice如何創建一個公用的數據庫連線
写了一个webservice,提供几个function都是需要连接数据库查询数据并作返回。
每一个function都要去创建一个数据库连线:
[WebMethod(Description = "數據集")]
public string GetDatastring(string ALine)
{
OracleConnection myconn = this.GetConn();
GetStartTime(ALine);
DataSet dst = new DataSet();
string tmpSQL = @"select * from tbltmp where fline='{0}' ";
tmpSQL = String.Format(tmpSQL, ALine);
try
{
OracleDataAdapter dad = new OracleDataAdapter(tmpSQL, myconn);
//dad.FillSchema(dst, SchemaType.Mapped, "Temp");
dad.Fill(dst, "Temp");
//return dst;
string retv = DNDDSToCDS.AllstringToClientDataSet(dst, "Temp");
return retv;
}
finally
{
myconn.Close();
}
}
其他的都类似吧。。
现在如果每一个function都去创建一个数据库连线。多个程序访问webservice就会有很多个数据库连线(我在服务器上用netstat -n 查看有多个1521的连线(oracle端口号))。
本来采用webservice是为了减少数据库连线数,现在它一个程式就创建这么多连线,肯定是不行的。
所有想请教各位,webservice是否能公用一个数据库连线?(myConn 只使用一个)?
我是刚开始学C#用webservice,所有有些理解错误的地方请大侠理解!并不吝赐教!
谢谢!
------解决方案--------------------
每个函数查询的时候 打开数据库链接,用完关闭
------解决方案--------------------
GetConn();
是什么?
自己创建的>?