C# 请帮助我理解如何将我的代码转换为类似此线程的工作方式

C# 请帮助我理解如何将我的代码转换为类似此线程的工作方式,c#,asp.net,sql,sql-server,tsql,C#,Asp.net,Sql,Sql Server,Tsql,我不确定我是否需要创建一个全新的类或者什么,我对asp.net非常陌生 这是我的密码: public static IEnumerable<DistInfo> GetGeneralInformation ( int ClientID ) { using ( var conn = new SqlConnection( GetConnectionString() ) ) using ( var cmd = conn.CreateCommand() ) {

我不确定我是否需要创建一个全新的类或者什么,我对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;
            }
        }
    }
}
公共静态IEnumerable GetGeneralInformation(int-ClientID)
{
使用(var conn=new SqlConnection(GetConnectionString()))
使用(var cmd=conn.CreateCommand())
{
conn.Open();
cmd.CommandText=
@“选择i.GoLiveDate、i.FirstBonusRun、i.TechFName、i.TechLName、i.TechEmail、i.TechPhone、i.WebISPFName、i.WebISPLName,
i、 WebISPEmail,i.WebISPPhone,i.FullFillFName,i.FullFillName,i.FullFillEmail,i.FullFillPhone,d.FName,
d、 L姓名,d.家庭电话,d.电子邮件
来自NC_信息i
内连接分配器d
在d.DistID=i.ClientID上
其中clientID=@value”;
cmd.Parameters.AddWithValue(“@value”,ClientID);
使用(var reader=cmd.ExecuteReader())
{
while(reader.Read())
{
var distInfo=新distInfo
{
ExpectedLaunchDate=reader.GetDateTime(reader.GetOrdinal(“GoLiveDate”))
};
收益率信息;
}
}
}
}
如果缺少assemblyt或引用,则提供。这是否意味着我需要创建一个DistInfo类来实现这一点

new DistInfo给出与上述相同的错误

很抱歉,我对asp.net非常陌生,不太了解如何使我的工作方式与本文中的类似:


您是否真的有一个名为
DistInfo
的类?代码是否编译?如果没有,则需要添加一个新的DistInfo类,该类至少有一个
DateTime
。比如:

public class DistInfo
{
    public DateTime AnticipatedLaunchDate { get; set; }
}

如果需要,您可以在其中添加更多属性:)

您确实有一个名为
DistInfo
的类吗?代码是否编译?如果没有,则需要添加一个新的DistInfo类,该类至少有一个
DateTime
。比如:

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);
}

只有当必须返回多个值时,才需要创建一个类。

如果只需要返回日期/时间信息,请如下定义方法

public static IEnumerable<DateTime> GetGeneralInformation(int ClientID)
int goLiveDateOrdinal = reader.GetOrdinal("GoLiveDate");
while (reader.Read()) {
    yield return reader.GetDateTime(goLiveDateOrdinal);
}


只有在必须返回多个值时,才需要创建类。

是否定义了
DistInfo
类?您不了解基本编程原则,正在尝试连接到数据库?真正地倒带并重新开始。来自Hello World。@walther我已经有了连接数据库、处理会话和登录用户的站点。连接到数据库甚至不是问题。从数据库中提取信息甚至不是问题。然而,在本例中,从数据库中提取这么多信息,然后尝试将其放入文本框是一个问题。您是否定义了
DistInfo
类?您不了解基本编程原则,正在尝试连接到数据库?真正地倒带并重新开始。来自Hello World。@walther我已经有了连接数据库、处理会话和登录用户的站点。连接到数据库甚至不是问题。从数据库中提取信息甚至不是问题。然而,在这个例子中,从数据库中提取这么多的信息,然后尝试将其放入文本框是一个问题。现在我该怎么做
IEnumerable distInfo=GeneralFunctions.GetGeneralInformation((int)会话[“DistID”]);launchDate.Text=distInfo.expectedlaunchdate它不喜欢ExpectedLaunchDate。您需要将第二部分更改为
launchDate.Text=distInfo.ExpectedLaunchDate.ToSortDateString()distInfo不喜欢。ExpectedLaunchDate。它给出了以下错误:system.Collections.Generic.IEnumerable不包含“ExpectedLaunchDate”的定义,并且没有扩展方法“ExpectedLaunchDate”接受类型为的第一个参数……啊,对不起,这里有一个项目列表,而不仅仅是一个,这就是IEnumerable的意思,一个DistInfo列表。你到底想让launchDate控件说什么?launchDate控件应该用GetGeneralInformation(int ClientID)方法的结果填充。要么是日期时间,要么是空的。好的,我现在有这个。现在我该怎么做
IEnumerable distInfo=GeneralFunctions.GetGeneralInformation((int)会话[“DistID”]);launchDate.Text=distInfo.expectedlaunchdate它不喜欢ExpectedLaunchDate。您需要将第二部分更改为
launchDate.Text=distInfo.ExpectedLaunchDate.ToSortDateString()distInfo不喜欢。ExpectedLaunchDate。它给出了以下错误:system.Collections.Generic.IEnumerable不包含“ExpectedLaunchDate”的定义,并且没有扩展方法“ExpectedLaunchDate”接受类型为的第一个参数……啊,对不起,这里有一个项目列表,而不仅仅是一个,这就是IEnumerable的意思,一个DistInfo列表。你到底想让launchDate控件说什么?launchDate控件应该用GetGeneralInformation(int ClientID)方法的结果填充。它要么是DateTime,要么是空的。DateTime只是一个属性,我最终会有大约16个。只是用一个来让它工作=(我确实克服了这个错误,但是它与会话变量有关。现在转到下一个错误:)datetime只是一个属性,我最终会有大约16个。只是用一个来让它工作=(我确实通过了错误,但是,它与会话变量有关。现在转到下一个错误:)