开发者

ObjectDataSource and FormView: how to add UI edition behaviour from business layer

开发者 https://www.devze.com 2023-01-23 01:08 出处:网络
I\'m using an ObjectDataSource and a FormView. In the FormView I have a set of controls. When the FormView is in edition, I have in particular a ComboBox and a TextBox which are related as follows:

I'm using an ObjectDataSource and a FormView.

In the FormView I have a set of controls. When the FormView is in edition, I have in particular a ComboBox and a TextBox which are related as follows: when the ComboBox takes some special values, the TextBox must be read only or not.

For the moment I get that behaviour as follow开发者_JAVA技巧s: the ComboBox triggers a postback when its selected item is changed and in the 'OnPreRender' of my page I get the value of the ComboBox and update the Readonly property of the TextBox accordingly.

What I don't like with this method is that I don't use my object model which is consumed by the ObjectDataSource. The problem is simply that when the FormView is in edition there does not seem to be a way to get the instance of the object which is being edited. The 'DataItem' is null and I haven't found any way to automatically build a new object from the values in the controls to pass it to my business layer. Of course I could do the whole job myself by getting explicitly all the values in the controls, but that's not nice.

Has anybody ever met such a scenario ? Any ideas on how to get a clean design ?


How about using DataItemIndex or DataKey? I would probably use DataKey and then use the business method to look up for the object for the key.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号