zoukankan      html  css  js  c++  java
  • C#基础语法实例荟萃

    匿名类

    action = new UploadHandler(context, new UploadConfig()
    {
         AllowExtensions = Config.GetStringList("imageAllowFiles"),
         PathFormat = Config.GetString("imagePathFormat"), //设置上传图片的保存路径及文件名模板
         SizeLimit = Config.GetInt("imageMaxSize"),
         UploadFieldName = Config.GetString("imageFieldName")
    });

    delegate 传递匿名方法

    所谓的delegate 传递匿名方法

    //使用ThreadPool开启线程
    //无参数传递
    private void DoWork() {
        ThreadPool.QueueUserWorkItem(new WaitCallback(this.DoSomething));
    }
    private void DoSomething(object o) {
        MessageBox.Show("thread start");
    }
    //有参数传递
    private void DoWork() {
        ThreadPool.QueueUserWorkItem(new WaitCallback(this.DoSomething), "guozhijian");
    }
    private void DoSomething(object o) {
        MessageBox.Show(o.ToString());
    }
    //使用匿名方法更灵活,即使用delegate向WaitCallback出入匿名方法体 
    //即delegate + 一个没有名称方法(参数列表+方法体)
    private void DoWork() {
        string name = "guozhijian";
        ThreadPool.QueueUserWorkItem(new WaitCallback(delegate(object o){
            MessageBox.Show(name);
        }));
    }

    as和is 

    as与is做差不多的事情,类型显式强制转换。
    as操作符的工作方式与强制类型转换一样,只是它永远不会抛出一个异常——相反,如果对象不能转换,结果就是null。

    Object obj=new Object(); 
    ClassA a= obj  as ClassA;
    if(a!=null)  //在if判断a是否为null, 因为如果obj不兼容类型ClassA,as将返回null赋值给a
    {
    ...
    }

    ?? 

    ??  判断不为null,然后执行

    public PagedList(IEnumerable<T> allItems, int pageIndex, int pageSize)
    {
         PageSize = pageSize;
         var items = allItems as IList<T> ?? allItems.ToList();
         TotalItemCount = items.Count();
         CurrentPageIndex = pageIndex;
         AddRange(items.Skip(StartItemIndex - 1).Take(pageSize));
    }
    string result = (Cache[cacheKey] ?? "N").ToString();

     匿名数组字面值

    new[] { "Xxx" }
    string[] staticFileList = {
                     "index.html",
                     "news_list_jt.html",
                     "news_list_gs.html",
                     "news_list_yw.html",
                     "news_list_jiaojuguoqi.html"
    };
    staticFileList = new string[] { };
  • 相关阅读:
    网页制作-表单元素2
    网页制作-表单元素
    网页制作_表格
    网页制作常用标签
    IT新起之秀
    Android Studio 快捷键
    android github
    手机抓包 http tcp udp?
    Ubuntu16.04 Caffe 安装步骤记录(超详尽)(转载)
    ubuntu16.04 在cuda9.0环境下编译安装opencv2.4.13.7
  • 原文地址:https://www.cnblogs.com/zhuji/p/5133230.html
Copyright © 2011-2022 走看看