C# SQLDataReader GetDateTime格式

C# SQLDataReader GetDateTime格式,c#,asp.net,sql,C#,Asp.net,Sql,检查下面的我的代码: HTML页面: <table width="100%" align="right" cellpadding="2" cellspacing="2" border="0" bgcolor="#EAEAEA"> <tr align="center" style="background-color: yellow; color: black;"> <th colspan="2">Fauzan</th>

检查下面的我的代码:

HTML页面:

<table width="100%" align="right" cellpadding="2" cellspacing="2" border="0" bgcolor="#EAEAEA">
    <tr align="center" style="background-color: yellow; color: black;">
        <th colspan="2">Fauzan</th>
        <th colspan="2">Febri</th>
    </tr>
    <tr align="left" style="background-color: gray; color: black;">
        <td>ID</td>
        <td>Number01</td>
        <td>TheDate</td>
        <td>Number02</td>
    </tr>
    <%=getWhileLoopData()%>
</table>

福赞
发热
身份证件
01号
日期
02号
代码隐藏:

public string getWhileLoopData() 
{
 string htmlStr = "";
 SqlConnection thisConnection = new SqlConnection(ConfigurationManager.ConnectionStrings["MyConnectionString"].ConnectionString);
 SqlCommand thisCommand = thisConnection.CreateCommand();
 thisCommand.CommandText = "SELECT * FROM MyTable WHERE TheDate = @TheDate";
 thisCommand.Parameters.AddWithValue("@TheDate", txtDate.Text);

 thisConnection.Open();
 SqlDataReader reader = thisCommand.ExecuteReader();

 while (reader.Read()) {
     int id = reader.GetInt32(0);

     int Number01 = reader.GetInt32(1);
     DateTime TheDate = reader.GetDateTime(2);
     Decimal Number02 = reader.GetDecimal(3);

     //string Pass = reader.GetString(2);
     htmlStr += "<tr><td>" + id + "</td><td>" + Number01 + "</td><td>" + TheDate + "</td><td>" + Number02 + "</td></tr>";
 }

 thisConnection.Close();
 return htmlStr;
}
公共字符串getWhileLoopData()
{
字符串htmlStr=“”;
SqlConnection thisConnection=新的SqlConnection(ConfigurationManager.ConnectionString[“MyConnectionString”].ConnectionString);
SqlCommand thisCommand=thisConnection.CreateCommand();
thismCommand.CommandText=“从MyTable中选择*,其中日期=@TheDate”;
thisCommand.Parameters.AddWithValue(“@TheDate”,txtDate.Text);
thisConnection.Open();
SqlDataReader=thisCommand.ExecuteReader();
while(reader.Read()){
int id=reader.GetInt32(0);
int Number01=reader.GetInt32(1);
DateTime TheDate=reader.GetDateTime(2);
Decimal Number02=reader.GetDecimal(3);
//string Pass=reader.GetString(2);
htmlStr+=“”+id+“”+Number01+“”+TheDate+“”+Number02+“”;
}
thisConnection.Close();
返回htmlStr;
}

问题是,如何格式化数据读取器?如“日期”字段,从“2014年6月18日12:00:00 AM”到“2014年6月18日”。同样对于'Number02'字段,我如何格式化它?例如,从“0.829”变为“0.83”。

您可以使用ToString()和

您可以使用设置数字的格式

Number02 = Math.Round(Number02, 2);
您可以直接格式化正在生成的html字符串中的日期和数字

htmlStr += "<tr><td>" + id + "</td><td>" + Number01 + "</td><td>" +
   TheDate.ToString("dd/MMM/yyyy") + "</td><td>" +  Math.Round(Number02, 2) + "</td></tr>";
htmlStr+=“”+id+“”+Number01+“”+
日期ToString(“dd/MMM/yyyy”)+“”+数学四舍五入(数字02,2)+“”;

嘿,伙计,这很有效!非常感谢你。还有一个问题,我如何格式化数字?从1200到1200。要使用逗号作为分隔符。可能还想在数字后面加上.00。干杯,你可以使用类似,String.Format(“{0:n2}”,1234)嘿,伙计,从我上面的问题。。如何将02的总数放入html表中?
htmlStr += "<tr><td>" + id + "</td><td>" + Number01 + "</td><td>" +
   TheDate.ToString("dd/MMM/yyyy") + "</td><td>" +  Math.Round(Number02, 2) + "</td></tr>";