私は日付がユーザーによって入力を取得するテキストボックスとテキストボックスのカレンダーエクステンダーを使用していたWebアプリケーションを作成していますが、私はこの("dd-MM-yyyy")
形式で日付をしたい、変換日付タイプC#
が、私はエラー
を取得しています(算術オーバーフローエラーがデータ・タイプ 日時に式を変換する。)
デフォルトで日付の形式は("yyyy-MM-dd")
この
protected void txttodate_TextChanged(object sender, EventArgs e)
{
string com = Convert.ToString(Session["radio"]);
string com1 = Convert.ToString(Session["mysession"]);
Session["drd3"] = com.ToString();
Session["lblname"] = com1.ToString();
SqlCommand cmdtr = new SqlCommand("select empname from trainerdetails where trid='"+com1.ToString()+"'",con);
con.Open();
SqlDataReader dr = cmdtr.ExecuteReader();
while (dr.Read())
{
lblempname.Text = dr["empname"].ToString();
}
GridView1.Visible = true;
connectionstr = WebConfigurationManager.ConnectionStrings["Constr"].ConnectionString;
con = new SqlConnection(connectionstr);
SqlCommand cmd = new SqlCommand("csuvdaterange");
cmd.CommandType = CommandType.StoredProcedure;
cmd.Connection = con;
SqlParameter[] param =
{
new SqlParameter("@logintype",com.ToString()),
new SqlParameter("@name",lblempname.Text),
new SqlParameter("@datefrm",txtfrmdate.Text),
new SqlParameter("@dateto",txttodate.Text)
};
cmd.Parameters.AddRange(param);
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);
GridView1.DataSource = ds;
GridView1.DataBind();
}
これは私のバックエンドコードusing
ステートメントを使用して、パラメータ化SQLを使用して上のJonの提案を実装した後、あなたはその確実な場合
<asp:TextBox ID="txtfrmdate" Visible="false" runat="server" placeholder="From" style="margin-left:10px; margin-top:8px;" Height="30px" Width="200px"></asp:TextBox>
<asp:CalendarExtender ID="calenderfromextend" TargetControlID="txtfrmdate" runat="server" Format="dd-MM-yyyy"></asp:CalendarExtender>
<asp:TextBox ID="txttodate" placeholder="To" Visible="false" runat="server" style="margin-left:10px; margin-top:8px;" AutoPostBack="true" OnTextChanged="txttodate_TextChanged" Height="30px" Width="200px"></asp:TextBox>
<asp:CalendarExtender ID="calendertoextend" TargetControlID="txttodate" runat="server" Format="dd-MM-yyyy"></asp:CalendarExtender>
私のテキストボックスとカレンダーエクステンダー
修正するためにまず最初に:あなたの選択でパラメータ化SQLを使用しますクエリ。次に、アプリケーション*で日付解析を行い、その値を 'DateTime'として渡すことを強くお勧めします。次に、あなたはあなたの接続やコマンドなどのために 'using'ステートメントを使用しているはずです –
@JonSkeetはすべてに注意を払いました。 –