私はASP.NETフォームのDropDownListにバインドするLinqDataSourceを作成しようとしています。私は日付(データベースのフィールドの1つ)に従って要素を表示したいだけです。LinqDataSourceとDateTimeのフォーマット
基本的に、私が示したい要素は、先物(すなわち、DateTime.Nowの後ろ)で起こる要素です。
<asp:DropDownList runat="server" ID="DropDownList1"
AppendDataBoundItems="True" DataSourceID="LinqDataSource1"
DataTextField="TextField" DataValueField="ValueField">
</asp:DropDownList>
<asp:LinqDataSource ID="LinqDataSource1" runat="server"
ContextTypeName="DataContext1" TableName="Table"
Where="DateField >= @DateField">
<WhereParameters>
<asp:Parameter DefaultValue="DateTime.Now" Name="DateField"
Type="DateTime" />
</WhereParameters>
</asp:LinqDataSource>
私はそれを実行しようとすると、「文字列が有効な日時として認識されませんでした」という形式の例外を取得しています:
私は、次のマークアップをしようとしていました。しかし、DateTime.Parseが完全に機能するので、データベースの日付は問題ないようです。 DateFieldの型はSQLのdatetimeです。
私はここで何が欠けていますか?
ありがとうございます!
を使用して、Page_Loadイベントで非常に簡単に行うことができます。ただし、パラメータに対して式を使用することはできません。詳細は私の答えを見てください。 –