zoukankan      html  css  js  c++  java
  • Linq快速入门——扩展方法

    Linq为我们提供了许多扩展方法,方便我们对数据源进行操作(Where,Select...)。即使你不了解算法,也能使用Linq当回牛人。扩展方法本质并不是什么高深的技术,说白了就是一个Static静态方法。

    声明扩展方法步骤:

    • 创建一个名为MyHelper的类,约定了此类中的方法均是扩展方法。注意这个类必须是静态类(Static)
    • 扩展方法必须是Static静态方法
    • 第一个参数为待扩展的类型,前面标注this
    • 如果MyHelper在一个类库中,记得对其添加引用using相关名称空间

    A simple example

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    
    namespace Linq
    {
        public static  class 扩展方法Helper
        {
            public static string ToMyUpper(this string helper)
            {
                return "\""+helper.ToUpper() + "\"";
            }
    
            public static string Quoted(this string helper,string a,string b)
            {
                return a + helper + b;
            }
            public static bool IsNumber(this string helper)
            {
                int i;
                return int.TryParse(helper,out i);
            }
            public static string ToChineses(this bool helper)
            {
                return  helper ? "" : "";
            }
            public static int CreateMan(this Person helper)
            {
                Person one = new Person { Age=18,Name="Eyes"};
                return one.Age;
            }
        }
        public class Person
        {
            public int Age { get; set; }
            public string Name { get; set; }
        }
    }
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    
    namespace Linq
    {
        class Program
        { 
            static void Main(string[] args)
            {
    
                Person p = new Person();
                Console.WriteLine(p.Name.IsNumber().ToChineses());
                Console.ReadKey();
            }
        }
    }

    总结

    系列完善中,请持续关注...

  • 相关阅读:
    软件工程之旅开始啦
    c# async,await, 委托函数
    mysql 访问不是本地数据库,给用户刷新了权限没有作用
    c# WndProc事件 消息类型
    sql not in 优化问题
    c# dataGridView 表头格式设置不管用
    sql 更新多条记录
    mysql 插多行数据
    win7 64bit+vs2010 操作注册表
    bat脚本命令
  • 原文地址:https://www.cnblogs.com/OceanEyes/p/2658411.html
Copyright © 2011-2022 走看看