在c#ASP.Net中查找当天的当前日期

时间:2012-01-13 19:30:50

标签: c# asp.net

我希望在c#ASP.Net中找到当天的某一天,如:

System.DateTime.Now.DayOfWeek.ToString(); 

此代码在控制台应用程序中运行良好,但是当我尝试将此行的值存储在ASP.Net网站的字符串中时,它不返回任何内容。

有人可以帮忙吗?

StringBuilder message = null;

protected void Page_Load(object sender, EventArgs e)
{
    var dayofweek = System.DateTime.Now.DayOfWeek.ToString();
    String conn = "Data Source=.;Initial Catalog=OCSI;Integrated Security=True";//conne
    SqlConnection sqlconne = new SqlConnection(conn);

    string selectSQL = "SELECT lec FROM schedule WHERE [day]='" + dayofweek +"'";
    SqlCommand cmd = new SqlCommand(selectSQL, sqlconne);
    SqlDataReader reader = null;
    try
    {
        sqlconne.Open();
        reader = cmd.ExecuteReader();
        message = new StringBuider(); 
        while (reader.Read())
        {
            message.Append(reader["lec"].ToString());
           //question what are you using message for ...?
            Label3.Text = dayofweek;
        }
        reader.Close();
    }
    catch (Exception ex)
    {
        Response.Write(ex.Mesage);
    }
    finally
    {
        sqlconne.Close();
        // you neeed to Dispose of all other objects here too
        // StringBuilder Object
        // SqlDataReader Object
        //SqlCommand  Object.. 
        //Look into wrapping your Connection / Command Sql Dataobject around a using() {}
    }

我想在where子句SQL Query中使用当前日期来从数据库表中获取与当天相关的数据。

我使用var作为

 protected void Page_Load(object sender, EventArgs e)
 {
    String conn = "Data Source=.;Initial Catalog=OCSI;Integrated Security=True";//conne
    SqlConnection sqlconne = new SqlConnection(conn);

    var testDay = DateTime.Now.DayOfWeek.ToString();

    // string selectSQL = "SELECT lec FROM schedule WHERE [day]='" + dayofweek +"'";
    string selectSQL = string.Format("SELECT lec FROM schedule WHERE [day]= {0}", testDay);
    SqlCommand cmd = new SqlCommand(selectSQL, sqlconne);
    SqlDataReader reader;
    try
    {
        sqlconne.Open();
        reader = cmd.ExecuteReader();

        while (reader.Read())
        {
            message += reader["lec"].ToString();

            Label3.Text = testDay;
        }
        reader.Close();
    }
    catch
    { 
    }
    finally
    {
        sqlconne.Close();
    }

5 个答案:

答案 0 :(得分:5)

它适用于我。

enter image description here

答案 1 :(得分:3)

网页是定义为公共,静态或属性的值。

如果你写

var testDay = DateTime.Now.DayOfWeek.ToString();

结果将=“星期五”;

答案 2 :(得分:0)

还尝试将sql字符串更改为此

string selectSQL = 
   string.Format("SELECT lec FROM schedule WHERE [day]= {0}", dayofweek);

答案 3 :(得分:0)

如果删除where子句后一切正常,则将Where子句更改为此类

   string selectSQL = string.Format("SELECT lec FROM schedule WHERE dbo.schedule.day = {0} ", testDay);

我还会将字段日的名称更改为DayName之类的东西,如果day是保留字,则不要使用它。 查看SQL Reserved SQL Words

中保留字的链接

答案 4 :(得分:0)

作为整数值(系统将星期日设为0)=

int day = (int)DateTime.Now.DayOfWeek;