2010-06-04 48 views
0

我有一個ASP.Net DetailsView綁定到EntityDataSource控件。 我的實體集有一個DateTime屬性,我想將其設置爲默認值DateTime.Now 我不想在DetailsView上顯示此屬性。 我想我可以在我的EntityDataSource使用InsertParameter,但不知道語法,或者這是否是可能的:EntityDataSource中的默認DateTime參數

 <InsertParameters> 
      <asp:Parameter DbType="DateTime2" DefaultValue="" /> 
     </InsertParameters> 

我是否採取正確的方法呢?

回答

1

好吧,它看起來不可能在HTML中做到這一點,但您可以在後面的代碼中輕鬆完成。 只需將插入事件處理程序附加到實體數據源,然後將DateTime參數設置爲所需的默認值即可:

protected void edsNewsItem_Inserting(object sender, EntityDataSourceChangingEventArgs e) 
    { 
     var newsItem = e.Entity as NewsItem; 
     if (newsItem != null) 
     { 
      newsItem.Date = DateTime.Now; 
      newsItem.LastUpdated = DateTime.Now; 
     } 
    }