接着上次的,以扩展String类型为例,继续根据自己的使用习惯闭门造车!
 
这一次我重载了运算符 = 和 + ,我觉得这样更方便我的使用。首先先贴代码:
        /// <summary>
        /// 重载转换运算符:可以直接赋string的值给本对象完成实例化
        /// </summary>
        /// <param name="WString"></param>
        /// <returns></returns>
        public static implicit operator WString(string str)
        {
            return new WString(str);
        }

        /// <summary>
        /// 重载运算符:两个WString类型可以直接拼接字符串 sRet
        /// </summary>
        /// <param name="s1"></param>
        /// <param name="s2"></param>
        /// <returns></returns>
        public static WString operator +(WString s1, WString s2)
        {
            s1.sRet = string.Concat(s1.sRet, s2.sRet);
            return s1;
        }

重载运算符

演示代码:

            //修改构造函数,支持占位符
            WString sRet = );
            Console.WriteLine(sRet.sRet);
            Console.WriteLine();

            //也可以直接通过String来初始化对象
            WString sRet2 = "测试一下哦";
            Console.WriteLine(sRet2);
            Console.WriteLine();

            //支持两个WString通过运算符 + 来拼接字符串
            sRet2 += sRet;
            Console.WriteLine(sRet2);
            Console.WriteLine();

演示效果:

其他的修改:
1、重载了一个构造函数,支持占位符了(个人习惯嘛)
 
2、重写了ToString方法,直接返回WString的sRet属性(个人习惯)
 
3、序列化类内置,不需要引用Network.Json,内部使用的是fastJson。只需要引用WLF一个DLL,提供WLF.Json.JsonConvert类来完成序列化和反序列化。
 
使用fastJson的优点,虽然序列化的数据冗长,但可以序列化0行的 DataTable,很多序列化方式在0行DataTable情况下是返回空的,得到的DataTable是没有列头的,而fastJson可以达到我的要求。
 
这次重载了运算,自己用起来更爽了,很开心。

设计适用于SOA的类型(二)的更多相关文章

  1. 设计适用于SOA的类型

    我们经常把一个项目分层去开发,无论是通过三层来面向对象开发还是用WCF或Remoting等面向服务的方式开发,返回值只有一个,如果底层出错了我们一般写日志来记录这些错误,然后分析错误来解决问题,但用户 ...

  2. 结合领域驱动设计的SOA分布式软件架构

    引言 本文主要是参考Martion Fowler所著的<企业应用架构模式>与Eric Evans所著的<领域驱动设计>这两本泰山之作,加上本人在近年实际的工作过程中开发SOA系 ...

  3. IDDD 实现领域驱动设计-SOA、REST 和六边形架构

    上一篇:<IDDD 实现领域驱动设计-架构之经典分层> 阅读目录: SOA-面向服务架构 REST 与 RESTful 资源(Resources) 状态(State) 六边形架构 DDD ...

  4. 网页设计实战3 ufo类型的科技网页如何实现

    网页设计实战3 ufo类型的科技网页如何实现 一.总结 一句话总结:基础的图片素材就是如何几张图片,这个效果只是通过jquery或者js让那个png图片旋转起来了,如此而已.其实核心就是一个trans ...

  5. WPF 判断一个对象是否是设计时的窗口类型,而不是运行时的窗口

    原文:WPF 判断一个对象是否是设计时的窗口类型,而不是运行时的窗口 当我们对 Window 类型写一个附加属性的时候,在属性变更通知中我们需要判断依赖对象是否是一个窗口.但是,如果直接判断是否是 W ...

  6. 《手把手教你》系列基础篇(九十七)-java+ selenium自动化测试-框架设计篇-Selenium方法的二次封装和页面基类(详解教程)

    1.简介 上一篇宏哥介绍了如何设计支持不同浏览器测试,宏哥的方法就是通过来切换配置文件设置的浏览器名称的值,来确定启动什么浏览器进行脚本测试.宏哥将这个叫做浏览器引擎类.这个类负责获取浏览器类型和启动 ...

  7. ASP.NET MVC 描述类型(二)

    ASP.NET MVC 描述类型(二) 前言 上个篇幅中说到ControllerDescriptor类型的由来过程,对于ControllerDescriptor类型来言ActionDescriptor ...

  8. Android jni 编程4(对基本类型二维整型数组的操作)

    Android jni 编程 对于整型二维数组操作: 类型一:传入二维整型数组,返回一个整型值 类型二:传入二维整型数组,返回一个二维整型数组 声明方法: private native int Sum ...

  9. 《Linux内核设计与实现》 第一二章学习笔记

    <Linux内核设计与实现> 第一二章学习笔记 第一章 Linux内核简介 1.1 Unix的历史 Unix的特点 Unix很简洁,所提供的系统调用都有很明确的设计目的. Unix中一切皆 ...

随机推荐

  1. 小工具:内存监视器(SystemMonitor)

    卸了360之后,与之捆绑的加速球也没了.加速球可以查看剩余内存量,清理残留进程,有的时候不觉得这小玩意有多大作用,卸了之后才知道后悔. 加速球的替代方案比比皆是,如Windows自带的任务管理器,窗口 ...

  2. webservice发送字符串

    假设只是发送一个字符串client,这是很easy,只需要输入xfire包,编写接口,编写的实现方法.变化. 假设你要传输的数组或自定义类.到用于接口准备的需要agexis文件.更复杂. 尝试传输这些 ...

  3. 采用jquery的imgAreaSelect样品图像裁剪示范插件实现

    将用户上传的图片进行裁剪再保存是如今web2.0应用中经常处理的工作,如今借助jquery的imgareaselect插件再配合PHP的GD库就能够轻松的实现这个在曾经来说很棘手的功能. 我们来看看它 ...

  4. SVN提交忽略*.class、.classpath、.mymetadata、.project、.settings、.myeclipse和其他非版本控制文件

    1.忽略*.class 在TortoiseSVN -->setting(设定)--规设置 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveHVrZTY ...

  5. 启用IIS7报错功能

    进入:控制面板 - 卸载程序 - 打开或关闭Windows功能 如果访问任何不存在页面或页面出错时空白: Internet 信息服务 - 万维网服务 - 常见 HTTP 功能 - HTTP 错误 打勾 ...

  6. winform屏幕截图

    原文:winform屏幕截图 屏幕截图是一个比较常用的功能,在项目中出现的比例也比较高,至少我做过的每个项目都有屏幕截图这个功能,从全屏截图到区域截图都有出现过.当然区域截图已然包含了全屏截图. 全屏 ...

  7. DataTable与实体类的转换

    多年前写的DataTable与实体类的转换,已放github 阅读目录 介绍 起因 代码 UnitTest GitHub 介绍 很多年前一直使用Ado.net,后来慢慢转型到其他的orm,在转型过程中 ...

  8. Php设计模式(三):行为型模式part2

    原文详见:http://www.ucai.cn/blogdetail/7023?mid=1&f=5 可以在线运行查看效果哦! <接上文> 5.中介者模式(Mediator) : 用 ...

  9. 《python源代码剖析》笔记 python虚拟机中的函数机制

    本文为senlie原创,转载请保留此地址:http://blog.csdn.net/zhengsenlie 1.Python虚拟机在运行函数调用时会动态地创建新的 PyFrameObject对象, 这 ...

  10. 一步一步写算法(之挑选最大的n个数)

    原文:一步一步写算法(之挑选最大的n个数) [ 声明:版权所有,欢迎转载,请勿用于商业用途.  联系信箱:feixiaoxing @163.com] 从一堆数据中挑选n个最大的数,这个问题是网上流传的 ...