• 一个不错的Silverlight展示网站反编译后的源码和大家分享一下(http://www.microsoft.com/taiwan/student/Good.htm),很简单的


    只是微软的一个Silverlight展示网站。

    涉及到的反编译知识:

    一。关于Linq的IL

    1. 源代码:

         XmlReader reader = XmlReader.Create(new StringReader(e.Result));
                XDocument document = XDocument.Load(reader);
                var projects = from f in document.Descendants("mspData")
                               where (f.Attribute("expire").Value == this.expire_id.ToString())
                               select new mspDatas
                               {
                                   expire = int.Parse(f.Attribute("expire").Value),
                                   Name = f.Attribute("Name").Value,
                                   nickName = f.Attribute("nickName").Value,
                                   school = f.Attribute("school").Value,
                                   email = f.Attribute("email").Value,
                                   msn = f.Attribute("msn").Value,
                                   blogTitle = f.Attribute("blogTitle").Value,
                                   blogUrl = f.Attribute("blogUrl").Value,
                                   imgFile = f.Attribute("imgFile").Value,
                                   Introduce = f.Value
                               };

                List<mspDatas> list = new List<mspDatas>();
                list.AddRange(projects);

    2.反编译后的代码:  

      if (CS$<>9__CachedAnonymousMethodDelegate5 == null)
            {
                CS$<>9__CachedAnonymousMethodDelegate5 = new Func<XElement, mspDatas>(null, (IntPtr) <client_DownloadStringCompleted>b__4);
            }
            IEnumerable<mspDatas> collection = Enumerable.Select<XElement, mspDatas>(Enumerable.Where<XElement>(XDocument.Load(XmlReader.Create(new StringReader(e.get_Result()))).Descendants("mspData"), new Func<XElement, bool>(this, (IntPtr) this.<client_DownloadStringCompleted>b__3)), CS$<>9__CachedAnonymousMethodDelegate5);
            List<mspDatas> list = new List<mspDatas>();
            list.AddRange(collection);

    http://dev.firnow.com/course/4_webprogram/asp.net/asp_netxl/20100629/232110.html 此地址对Linq进行了讲解,有趣的朋友到此网站了解一些Linq的IL知识

    二、[CompilerGenerated]自动生成属性属性

    1.源代码

       public int Pages { get; set; }
            public bool IsPro { get; set; }

    1.反编译后的代码:

     [CompilerGenerated]
        private bool <IsPro>k__BackingField;

        [CompilerGenerated]
        private int <Pages>k__BackingField;

      public bool IsPro
        {
            [CompilerGenerated]
            get
            {
                return this.<IsPro>k__BackingField;
            }
            [CompilerGenerated]
            set
            {
                this.<IsPro>k__BackingField = value;
            }
        }
      public int Pages
        {
            [CompilerGenerated]
            get
            {
                return this.<Pages>k__BackingField;
            }
            [CompilerGenerated]
            set
            {
                this.<Pages>k__BackingField = value;
            }
        }

     

    三、 [DebuggerNonUserCode]属性来限制代码正在调试/步入

     

    演示地址:http://www.microsoft.com/taiwan/student/Good.htm

    源代码:https://files.cnblogs.com/salam/SlFrame.rar

  • 相关阅读:
    springMVC和Struts2的区别
    Java并发教程(Oracle官方资料)
    Java并发教程(Oracle官方资料)
    Perl 按地区统计访问次数
    Perl 多个正则匹配
    Perl 判断字符串为空
    Java中的大小写字母相互转换(不利用Java自带的方法)
    如何利用JavaScript遍历JSON数组
    javax.servlet.JspTagException:Illegal use of -style tag without as its di
    PERL get网页
  • 原文地址:https://www.cnblogs.com/salam/p/1800937.html
Copyright © 2020-2023  润新知