zoukankan      html  css  js  c++  java
  • C# Extension Methods

    In C#, extension methods enable you to add methods to existing class without creating a new derived class.

    Extension methods 要求:

    1. Define a static class to contain extension method. This class must be visible to client code.
    2. Implement the extension method like a static method, but add "this" modifier before the first parameter.
    3. The first parameter specifies the type that this extension method operates on.
     1 using System.Globalization;
     2 using System.Threading;
     3 
     4 namespace Library
     5 {
     6     public static class StringExtensions
     7     {
     8         //static method
     9         //public static string ConvertToTitleCase(this string source)
    10         //extension method
    11         public static string ConvertToTitleCase(this string source)
    12         {
    13             CultureInfo cultureInfo = Thread.CurrentThread.CurrentCulture;
    14             TextInfo textInfo = cultureInfo.TextInfo;
    15 
    16             return textInfo.ToTitleCase(source);
    17         }
    18     }
    19 }

    Extension methods call:

     Call extension method  like extension method is an instance method on the type.

     1 namespace Library_Simple
     2 {
     3     //Import extension method namespace
     4     using Library;
     5     class Program
     6     {
     7         static void Main(String[] args)
     8         {
     9             string source = "the return of the king";
    10             string extected = "The Return Of The King";
    11 
    12             //static method
    13             //string result = StringExtensions.ConvertToTitleCase(source);
    14             //extension method
    15             string result = source.ConvertToTitleCase();
    16 
    17             Assert.IsNotNull(result);
    18             Assert.AreEqual(expected, result);
    19         }
    20     }
    21 }
  • 相关阅读:
    Homework
    自我介绍,恩。。算是吧
    What ASP.NET Developers Should Know About JavaScript
    短信猫软件的C#实现系列文章
    装箱与拆箱
    HTML的基本标签
    CSS基础用法
    ajaxToolkit:AutoCompleteExtender 用法详解
    比较强大的分页存储过程
    不知道写点什么
  • 原文地址:https://www.cnblogs.com/Dylan-Java-NYC/p/5958925.html
Copyright © 2011-2022 走看看