WCF入门(11)
前言
终于出太阳了。
可惜风太大,凉在阳台上的衣服全被吹到了地上,外加几双袜子被吹掉了,gone。
第11集 Difference between DataContract and MessageContract in WCF(WCF中DataContract 和 MessageContract 的区别)
今天11集,视频总共11分41秒,够短的,内容也很简单。上集的例子上也讲过一些他们的区别,这集来总结一下。
通过DataContract 特性,我们对soap message的内容格式控制是非常有限的,
可以看到,能做的事情还是很有限的,但是MessageContract 就不一样了,有header和body两部分,自身又可以通过属性来控制所有能需要控制的东西(full control)。
视频后面提到一个问题,上集中一个LicenseKey,是放在header里面的,就有人问了,是否可以直接作为一个参数传过去。答案是:单从解决问题的角度来说,可以的。但是,极其不推荐。因为从代码“美观”的角度来说,那个方法是仅仅是一个GetEmployee,获取员工信息的方法,如果放上这个LicenseKey,就会牵扯到一些验证的东西,毕竟,我们都喜欢KISS(keep it simple and stupid)。当然,验证肯定还是要的,所以可以把封装起来的这个EmployeeRequest 类放到什么地方处理一下。而且,万一以后要加什么属性,只要扩展一下这个Request类(类里面多个属性总比改若干个方法签名要好);
最后一点,视频说有人通过看他的视频found a job。。。好吧。
好简单的一集,不晓得放博客园首页会不会给管理员弄掉~~。
ThankYou!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?