我不确定我是否需要创建一个全新的类还是什么,我对 asp.net 很陌生。
这是我的代码:
public static IEnumerable<DistInfo> 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() )
{
var distInfo = new DistInfo
{
AnticipatedLaunchDate = reader.GetDateTime( reader.GetOrdinal( "GoLiveDate" ) )
};
yield return distInfo;
}
}
}
}
给出您是否缺少程序集或引用。 这是否意味着我需要创建一个 DistInfo 类才能完成这项工作?
新的DistInfo给出与上述相同的错误。
抱歉,我对 asp.net 很陌生,不太了解如何像这篇文章中那样让我的工作:
我不断收到此错误:"关闭读取器时尝试调用 Read 无效"
你真的有一个名为 DistInfo
的类吗?代码可以编译吗?如果没有,则需要添加一个至少具有DateTime
的新 DistInfo 类。像这样:
public class DistInfo
{
public DateTime AnticipatedLaunchDate { get; set; }
}
如果需要,可以在其中添加更多属性:)
如果您只需要返回日期/时间信息,请像这样定义您的方法
public static IEnumerable<DateTime> GetGeneralInformation(int ClientID)
并像这样简化您的阅读循环
int goLiveDateOrdinal = reader.GetOrdinal("GoLiveDate");
while (reader.Read()) {
yield return reader.GetDateTime(goLiveDateOrdinal);
}
仅当必须返回多个值时,才需要创建类。