我在我的DeatilView控件中定義了一個InsertItemTemplate。在這個模板中,我有一些用戶填充的字段和一些自動填充的字段,用戶不能更改它們。這些值來自會話中存儲的對象。
代碼如下所示:(我只提必要的部分,如果你需要更多的東西讓我知道)ASP.NET DetailView InsertItemTemplate
<asp:DetailView ... DataSourceID="MyDataSource" ...>
<Fields>
...
<InsertItemTemplate>
// These are the fields filled by the system
<asp:Label ... Text='<%# some value from session object %>' />
<asp:Label ... Text='<%# some value from session object %>' />
// some textboxes here that user fills,
//they use Bind("some data source value here") to send their data to database
...
</InsertItemTemplate>
...
</Fields>
</asp:DetailView>
現在的問題是,我需要真正的值插入數據庫。
正文發送文本框值,但由於我沒有綁定標籤值,因此它們不會發送到DataSource。所以我問如何做到這一點?
- 我找到了一個替代方法是傳遞一個默認值到DataSet的 各自InsertParameter,但我不知道如何來填補這一領域 得到它從會話值。
- 另一種方法是設置參數的值(不是默認值) 從會議,這是可能的,但這種只支持採取 值是直接在會話,而我通過內部的的 一個屬性的值存儲在Session中的對象。有沒有 方法來解決這個問題,除了直接在會話 中存儲值之外。
如果按類型表示DataSourceMode,那麼我沒有指定任何,我認爲默認情況下意味着DataSet模式。 – atoMerz
不,我的意思是SqlDataSource,ObjecDataSource,LinqDataSource等。 – boades
或者你從代碼隱藏中設置deatails視圖的DataSource對象? – boades