WebService中大量的类,需要转化为本地自定义的类,用什么模式好?

ndsc20090609 2009-06-18 05:27:33
比如WebService中大量的类 A1 A2 A3 A4 A5...
对应本地自定义的 B1 B2 B3 B4 B5..
需要实现 从 A1的实例 到B1的实例的转化。
即 F(new A1()) = new B1() ,用什么模式比较好?? 理由

...全文
95 12 打赏 收藏 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
ndsc20090609 2009-06-19
  • 打赏
  • 举报
回复
我靠,给错分了!!
ndsc20090609 2009-06-19
  • 打赏
  • 举报
回复
Sorry

是我词不达意,其实我想的是可扩展的模式,而不是具体的 F(new A1()) = new B1() 的实现。

本贴马上结分,另开帖子问,如果还有分的话,呵呵。
kangbo818 2009-06-19
  • 打赏
  • 举报
回复
帮顶
ourola 2009-06-19
  • 打赏
  • 举报
回复
简单一点的话,接口就可以解决问题..
vwxyzh 2009-06-18
  • 打赏
  • 举报
回复
实体类之间内容复制?
如果结构高度相似的话,可以看我以前写的一篇Blog
用起来就是:
EntityCopier copier = EntityCopier.CreateAuto();
// Blog中有具体实现,并且支持嵌套
// 如果有特殊的copy方式,需要注册相关的类型之间的copy方法
// 到具体copy的时候就是:
public B1 Copy(A1 a)
{
B1 b = null;// 如果B1有默认构造函数,可以直接传null,否则,请手动new出来
copier.Copy<A1, B1>(a, ref b);
return b;
}
wuyq11 2009-06-18
  • 打赏
  • 举报
回复
用List<>泛型集合替代IList<>泛型接口集合。
将List<>泛型集合序列化为二进制形式,进行传递。

protected void CallService()
{
WebService ws = new WebService();
byte[] bs = ws.GetEmployeeListByteArray();
IList<A> list = null;
try
{
MemoryStream ms = new MemoryStream(bs);
BinaryFormatter formatter = new BinaryFormatter();
list = (List<A>)formatter.Deserialize(ms);
}
catch (Exception ex)
{
Response.Write("<script language='javaScript'>alert('"+ex.Message+"');</script>");
}

wuyq11 2009-06-18
  • 打赏
  • 举报
回复
web services中类的传递都需要序列化。
参考
宝_爸 2009-06-18
  • 打赏
  • 举报
回复
序列化.....是不是有点太重了.
lchy110 2009-06-18
  • 打赏
  • 举报
回复
做的不多 我做的都是
mxtweb.ADC.AdcSiRequest adcSiRequest = new mxtweb.ADC.AdcSiRequest();//实例化webservice的类



adcSiRequest.BizCode=localAdcSiRequest.BizCode;//将本地对应类的属性字段值赋给webservice类的属性值

-----------------接触这方面的不多 也没啥好优化办法
麻子Mozart 2009-06-18
  • 打赏
  • 举报
回复
帮顶
NealXX 2009-06-18
  • 打赏
  • 举报
回复
适配器。。
含训练好的YOLO权重与PyQt可视化检测界面,开箱即用,毕业设计/课程设计可直接上手。 【数据集概况】 · 检测类别(中文):[冲浪者(surfer)] · 训练集:438 张 · 验证集:125 张 · 测试集:63 张 · 总计:626 张 该数据集针对海滩冲浪场景进行精心构建,全面覆盖冲浪者在不同海浪条件下的动态表现,为海洋运动安全监测与行为分析提供了高价值数据资源,显著提升了相关领域的研究与应用水平。 该数据集训练集438张、验证集125张、测试集63张,分布科学合理,训练集规模充足以支持模型充分学习,验证集与测试集比例恰当,有效保障模型评估的准确性和可靠性。 该数据集标注质量卓越,所有冲浪者目标均被精确标注,边界框紧密贴合目标轮... 【训练曲线与评估图】 【模型训练配置】 参数 | 值 模型 | yolo26n 训练轮数 | 100 epochs 输入尺寸 | 640x640 批次大小 | 24 优化器 | auto 初始学习率 | 0.01 训练设备 【关键指标汇总】 训练了 91 个 epoch,最终轮指标: 指标 | 数值 mAP50 | **0.8359** mAP50-95 | 0.4031 Precision | 0.8209 Recall | 0.7764 train/box_loss | 1.7868 train/cls_loss | 0.8077 val/box_loss | 1.7200 val/cls_loss | 0.7941 【训练过程分析】 91 轮训练后 mAP50 为 0.8359,模型基本收敛但还有提升余地。Loss 曲线下降正常,后期趋于平缓。mAP50-95 为 0.4031,和 mAP50 差距 0.43,定位精度是主要短板。 【模型性能评估】 Precision 0.8209、Recall 0.7764,精度高于...

111,128

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧