반환 :이 참조 어떻게이 코드 가지고 SqlDataReader 개체
public static SqlDataReader GetGeneralInformation (int RecID)
{
using (var conn = new SqlConnection(GetConnectionString()))
using (var cmd = conn.CreateCommand())
{
conn.Open();
cmd.CommandText =
@"SELECT cs.Status, cs.Completed
FROM NC_Steps s
INNER JOIN NC_ClientSteps cs
ON cs.RecID = s.RecID
WHERE cs.ClientID = 162
AND s.RecID = @value";
cmd.Parameters.AddWithValue("@value", RecID);
using (var reader = cmd.ExecuteReader())
{
if (reader.Read())
{
return reader;
}
return null;
}
}
}
를?
시도했지만 작동하지 않습니다.
SqlDataReader reader = GeneralFunctions.GetGeneralInformation();
독자로부터 어떻게 읽습니까?
Reader.GetString(reader.GetOrdinal("Status"))
편집 :
지금 다음 오류 점점 오전 :
public static IEnumerable<IDataRecord> GetGeneralInformation (int ClientID)
{
using (var conn = new SqlConnection(GetConnectionString()))
using (var cmd = conn.CreateCommand())
{
conn.Open();
cmd.CommandText =
@"SELECT i.GoLiveDate, i.FirstBonusRun, i.TechFName, i.TechLName, i.TechEmail, i.TechPhone, i.WebISPFName, i.WebISPLName,
i.WebISPEmail, i.WebISPPhone, i.FullFillFName, i.FullFillLName, i.FullFillEmail, i.FullFillPhone, d.FName,
d.LName, d.HomePhone, d.Email
FROM NC_Information i
INNER JOIN Distributor d
ON d.DistID = i.ClientID
WHERE clientID = @value";
cmd.Parameters.AddWithValue("@value", ClientID);
using (var reader = cmd.ExecuteReader())
{
while (reader.Read())
{
yield return reader;
}
yield return null;
}
}
}
protected void Page_Load(object sender, EventArgs e)
{
IEnumerable<IDataRecord> reader = GeneralFunctions.GetGeneralInformation((int)Session[ "DistID" ]);
//string result = GeneralFunctions.GetGeneralInformation(Globals.GeneralInformation).First()[ "Status" ].ToString();
}
다른 SqlDataReader처럼 읽을 수없는 이유는 무엇입니까? 실패합니까? 그렇다면, 그것은'using' 문 때문입니다. 리더를 사용하기 전에 연결을 종료하고 있습니다. –
@ JohnSaunders 독자의 귀환을 시도하고 있습니다. 내가하고 싶은 일을 성취하기위한 최선의 방법이 확실하지 않습니다. 기본적으로 데이터베이스의 데이터로 채워지는 asp.net 양식입니다. 내가 그렇게 생각할 수있는 유일한 방법은 asp.net 텍스트 상자에 정보를 채울 수 있도록 독자를 반환하는 것입니다. –
독자가 채워진 객체를 반환 할 수 있습니다. 그리고 당신은 아직도 작동하지 않는 것을 말하지 않았습니다. –