对不起,我会尝试和尽可能最好的解释...C#传递信息
我有2个asp.net页面一个名为membermaster和第二个命名memberdetails。我创建了一个类库,它包含两个功能
我的第一个函数返回根据搜索结果列表...
我添加一个LinkButton到GridView的第一列,当点击它通过查询字符串membershipgen。我想做的事就是我的第二个功能我创造了这个
public DataTable GetMembers(int MEMBERSHIPGEN)
{
DataTable table = null;
SqlConnection con = null;
SqlCommand cmd = null;
SqlDataAdapter ad = null;
SqlParameter prm = null;
try
{
table = new DataTable();
using (con = new SqlConnection(connectionString))
{
using (cmd = new SqlCommand("usp_getmemberdetail", con))
{
using (ad = new SqlDataAdapter(cmd))
{
prm = new SqlParameter("@MEMBERSHIPGEN", SqlDbType.Int);
prm.Value = MEMBERSHIPGEN;
cmd.Parameters.Add(prm);
ad.Fill(table);
}
}
}
}
catch (Exception ex)
{
//write your exception code here
}
return table;
}
在试图尝试并发送membershipgen到这一点,它返回的结果。但是,一旦我编译DLL并将其添加到我的项目中,我不知道我将如何引用此函数来填充单个文本框和标签的信息。
我想要做的是当用户点击gridview上的viewdetails按钮时,我可以使用我通过querystring传递的membershipgen来通过存储过程填充页面,但智能将存储在DLL中。去
有点过主题,但是你的'SqlConnection'也应该封装在'using'块中。 – 2012-01-04 20:46:47
当你说不知道如何引用..?你称为GetMembers()方法是否意味着热?这是非常简单的完成也是你使用命名空间来命名你的命名空间内每个类..?如果你不确定粘贴两个.cs文件的小样本,我可以为你更新标题。 – MethodMan 2012-01-04 20:47:15
你的问题是,一旦GetMembers超出范围,表被销毁,这是你的结果。您需要将方法签名从void更改为某些内容,可能是DataTable,或者不是填充局部变量,而是填充成员/类变量。 – billinkc 2012-01-04 20:49:57