我有一个MyClassFile.cs文件,看起来像这样:
public class MyClass1
{
public static DataTable ReadData(string Connection, string Command, Dictionary Parameters)
{
//ADO.NET stuff here to .Fill() the DataTable Below
return dtTable;
}
public static void WriteData(string Connection, string Command, Dictionary Parameters)
{
//ADO.NET stuff to write to DB
}
}
我在Default.aspx.cs中使用它,如下所示:
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
var Parameters = new Dictionary<string, object>
{
{ "?Parameter1", TextBox1.Text },
{ "?Parameter2", TextBox2.Text }
};
DataTable dtTable = MyClass1.ReadData(Connection, Command, Parameters);
ListView1.DataSource = dtTable;
ListView1.DataBind();
}
}
这是一个网站。尤其是由于ReadData()是公共静态的,我是否会遇到此代码的问题?如果有很多用户同时使用该怎么办?
我的目标是拥有可重用的“ .ReadData(x,y,z)”和“ .WriteData(x,y,z)”
最佳答案
静态方法本质上是线程安全的,只要它们不访问应用程序其他部分共享的对象即可。因此,在您的ReadData / WriteData方法中,如果您只是接受参数,创建数据库连接,执行语句并返回某些内容,那么您应该可以。