WCF客户端代理类的生成,参数类型的变化
在“WCF客户端代理类”生成时,参数类型发生了变化。服务接口方法:
[OperationContract]
[ServiceKnownType(typeof(MonitoringsMonth))]
[ServiceKnownType(typeof(MonitoringsDay))]
[ServiceKnownType(typeof(MonitoringsYear))]
public List<Monitorings> GetWaterMonitoringEntityData(Monitorings.EnergyType energytype, KeyValuePairInfo<Monitorings.Period, string> monitordate, KeyValuePairInfo<Monitorings.MonitorType, string> monitortype, string meterusetype, bool issubstation)
{
List<Monitorings> MonitoringEntityDatas = new Mycems.BLL.WaterMonitoringDatas().GetMonitorDatas(energytype, monitordate, monitortype, meterusetype, issubstation);
return MonitoringEntityDatas;
}
“KeyValuePairInfo”是自定以的参数类型,定义方法如下:
[Serializable]
public class KeyValuePairInfo<TKey, TValue>
{
private TKey _key;
private TValue _value;
public KeyValuePairInfo(TKey key, TValue value)
{
_key = key;
_value = value;
}
public TKey Key
{
get { return _key; }
set { _key = value; }
}
public TValue Value
{
get { return _value; }
set { _value = value; }
}
}
生成客户端代理类的参数类型如下:
MyChartsService.KeyValuePairInfoOfMonitoringsPeriodstringfgNVcRZS two= new MyChartsService.KeyValuePairInfoOfMonitoringsPeriodstringfgNVcRZS();
MyChartsService.KeyValuePairInfoOfMonitoringsMonitorTypestringfgNVcRZS three = new MyChartsService.KeyValuePairInfoOfMonitoringsMonitorTypestringfgNVcRZS();
问题:
1、为什么在WCF客户端代理类上,两个参数的类型发生了变化,而且两个参数的类型还不一样???
2、“OfMonitoringsPeriodstringfgNVcRZS”和“OfMonitoringsMonitorTypestringfgNVcRZS”,怎么加上了这么长的一串??? “stringfgNVcRZS”表示什么呢??? --------------------编程问答-------------------- 神器的WCF。。。 --------------------编程问答-------------------- 用 dephilp 开发吧 --------------------编程问答-------------------- 原因呢,易做图们??? --------------------编程问答-------------------- 有谁知道原因吗??? --------------------编程问答-------------------- 不清楚序列化/反序列化的细节,但你要关心的只是类的属性一致,名字不一样有啥关系。 --------------------编程问答-------------------- 这些是底层的东西,LZ不用关心,会用就行 --------------------编程问答--------------------
名字变化太大了。。。 --------------------编程问答-------------------- TKey、TValue不是具体类型,WCF目前还不能完全支持泛型,所以只能将就着这样处理了。 --------------------编程问答-------------------- Ok... --------------------编程问答-------------------- WCF的原因了,对吧???
补充:.NET技术 , C#