2016-08-24 5 views
0
SqlConnection con = new SqlConnection(strConnString); 
con.Open(); 
SqlDataAdapter sda = new SqlDataAdapter("select availability FROM doc_availabledays where dname='" + Label2.Text + "'", con); 
DataSet dss = new DataSet(); 
sda.Fill(dss, "doc_availabledays"); 


DataRow drr = dss.Tables[0].Rows[0]; 
drr["availability"].ToString(); 

if (!e.Day.IsOtherMonth) 
{ 
    foreach (DataRow dr in dss.Tables[0].Rows) 
    { 
     if ((dr["availability"].ToString().Equals(DayOfWeek.Monday))||(dr["availability"].ToString().Equals(DayOfWeek.Tuesday))||(dr["availability"].ToString().Equals(DayOfWeek.Wednesday))) 
     { 

       e.Cell.BackColor = Color.PaleVioletRed; 

     } 
    } 
} 
+0

何が必要なヘルプですか?質問がはっきりしない – Sami

答えて

0

安全なキャストを使用する方が良いと思います。

string [] data = { "Monday", "Thursday", "Wednesday", "Tuesday" }; 
     DayOfWeek d; 
     var dt = DateTime.Now; 

     foreach (var st in data) 
     { 
      if (Enum.TryParse<DayOfWeek>(st, out d) && d == dt.DayOfWeek) 
      { 
       string abc = "i M Here"; 
      } 
     } 

DayOfWeekのDataTableに複数の列があるようです。その場合は、複数のOR演算子||で同じ条件を使用するか、DataRow列にループします。

詳細については、次をご覧ください。C#: DateTime.DayOfWeek to string comparison