我有一个要求,即用户可以指定可变数量的用户定义字段,例如在xml文件中。这些字段具有显示在GUI中的用户友好名称,以及用于将字段值保存并检索到数据库的代码。
问题是我需要我的WCF服务都使用用户定义字段列表,这样当我从数据库加载一个对象时,这些字段及其值被加载,但我还需要我的WPF客户端知道关于这些字段,以便当用户创建新类型的对象时,这些可配置字段可以作为输入使用,例如组合框。
我尝试了很多方法,看起来将可配置值放入服务是最好的方法,然后让客户端在启动时从服务中检索值。但我想知道是否有一种'正确'的方式来做这种事情,因为它似乎是大多数企业应用程序的明显要求。
很抱歉,如果问题有点模糊,但我试图将其从我个人计划的复杂性中抽象出来。
由于 克里斯
答案 0 :(得分:1)
如果WPF和WCF没有参与,你会怎么做?如果它只是一个调用另一个的类库,它将如何工作?您将创建一个类来封装用户定义的字段,然后将该类的实例传递给另一段代码。
在这里做同样的事情。
答案 1 :(得分:0)
好吧,对于WCF服务 - 您总是可以定义类似的属性:
[DataMember]
List<OptionalProperty> optionalProperties { get; set; }
然后将“OptionalProperty”类型定义为数据协定 - 很可能只是一个以Key
和Value
为字符串或类别的类 - 或者您需要的任何类型。
[DataContract]
class OptionalProperty
{
[DataMember]
string Key { get; set; }
[DataMember]
string Value { get; set; }
}
因为它是一个东西的列表,你可以有零,一,二,五,十五万等。
这适用于你的场景吗?