1

テキスト ボックスとカレンダー エクステンダーがあります。ページ Default.aspx のコードは次のとおりです。

 <asp:TextBox ID="tbdate" runat="server"></asp:TextBox>

 <asp:CalendarExtender ID="CalendarExtender1" runat="server" TargetControlID="tbdate" 
      Format="dd.MM.yyyy">
 </asp:CalendarExtender>

Default.aspx.csページで、TextBoxの値をDataTableの新しい列に挿入しようとしています

 dt.Columns.Add("date", typeof(string), tbdate.Text);

そして、私はこのエラーがあります

トークン '.' を解釈できません。6 の位置にあります。

4

2 に答える 2

1

最初に列を追加する必要があります:

dt.Columns.Add(new DataColumn("date", typeof(DateTime));

次に、ループを実行して必要な日付を追加します。

foreach(DataRow row in dt.Rows)
{
 row["date"] = DateTime.Parse(tbdate.Text);
}
于 2012-04-19T10:18:54.187 に答える
0

DataColumn この日付値を次のように追加したくないと思いますDataRow

DataTable dt = new DataTable();
dt.Columns.Add("date", typeof(DateTime));
dt.Rows.Add(DateTime.Parse(tbdate.Text));

ちなみに、DataColumnCollection.Addあなたが使った のオーバーロードはExpression.

この値をすべての行に追加する場合:

var selectedDate = DateTime.Parse(tbdate.Text));
dt.Columns.Add("date", typeof(DateTime));
foreach(DataRow row in dt.Rows)
{
    row["date"] = selectedDate;
}
于 2012-04-19T10:10:06.553 に答える