select参数中的默认值为DateTime.Now

时间:2015-07-24 12:58:31

标签: c# asp.net-mvc

我正在尝试在MVC中设置select参数的默认值:

<asp:Parameter Name="PickDate" Type="DateTime"  DefaultValue="<%: DateTime.Now.ToString("yyyy-MM-dd")%>" />

但它不起作用......我收到了错误“:

  

字符串未被识别为有效的DateTime。

我可以将DateTime.Now设置为默认值吗?

编辑1:仍然无法正常工作......

  <asp:SqlDataSource ID="SqlDataSourceDailyPickingList" runat="server" 
    ConnectionString="<%$ ConnectionStrings:ConnectionString %>" 
    ProviderName="<%$ ConnectionStrings:ConnectionString.ProviderName %>" 
    SelectCommand="SELECT * FROM DailyPickingList where PickDate = @PickDate">
     <SelectParameters>
      <asp:Parameter Name="PickDate" Type="DateTime"  DefaultValue="<%: DateTime.Now%>" />
    </SelectParameters>

</asp:SqlDataSource>

是否可能?

1 个答案:

答案 0 :(得分:4)

在将类型显式设置为DateTime时,您正在强制转换为默认值。试试这个:

<asp:Parameter Name="PickDate" Type="DateTime"  DefaultValue="<%: DateTime.Now%>" />

或者这个

<asp:Parameter Name="PickDate" Type="string"  DefaultValue='<%: DateTime.Now.ToString("yyyy-MM-dd")%>' />