【发布时间】:2012-06-18 08:55:48
【问题描述】:
我有一个允许人们编辑数据库中的数据的 winform,为了简化操作,假设数据库中有一个 Customer 表,其中包含 3 个字段 - 名称、城市、国家。通过 winform,人们可以添加/编辑/删除客户。
对于我们需要保存的每个操作:
字段名称是什么(在本例中为名称、城市、国家/地区)
字段值在修改之前是什么
修改后的字段值是什么。
如果操作是添加或删除,那么 2 和 3 将是相同的。
我已经使用 XMLSerialisation 实现了这个(但没有使用任何设计模式),我的 XML 输出看起来像这样。
<?xml version="1.0" encoding="utf-8"?>
<ActivityItem xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<UserID>26</UserID>
<FormTitle>frmCustomer</FormTitle>
<Action>Edit</Action>
<Area>Customers</Area>
<TrackedActivity>
<FieldNames>
<string>Name</string>
<string>City</string>
<string>Country</string>
</FieldNames>
<PreValues>
<string>CompA</string>
<string>London</string>
<string>UK</string>
</PreValues>
<PostValues>
<string>CompB</string>
<string>Manchester</string>
<string>UK</string>
</PostValues>
</TrackedActivity>
<DateTimeStamp>2012-06-15T10:16:18</DateTimeStamp>
</ActivityItem>
该解决方案可以使用不同数量的字段处理系统的不同区域(例如,当您修改产品时,同样的事情会起作用)。
我的问题是,是否有定义明确的设计模式来处理这种行为?
非常感谢
【问题讨论】:
标签: c# vb.net oop design-patterns xml-serialization