仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1543|回复: 11
打印 上一主题 下一主题

[学习教程] ASP.NET网页设计用于LINQ to Objects的交互扩大仓酷云

[复制链接]
柔情似水 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:21:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
它有很多缺点的,有兴趣可以到网上去搜索一下。于是微软有发明了“下一代”C++:C++/CLI语言,这个可以解决在.NETFramework中,托管C++产生的问题。在《程序员》杂志上,lippman和李建中合作连载介绍了C++/CLI语言。交互扩大(InteractiveExtensions,缩写为Ix)是一组附加的LINQtoObjects查询操纵符,它创建在ReactiveExtensions(Rx)所完成事情的基本之上。疾速扫瞄交互扩大的API以后,我们发明,在System.Linq定名空间下有一组IEnumerable的扩大办法。只管年夜多半开辟职员已在他们本人的工具库中编写了很多此类扩大办法,可是具有一份尺度完成仍是会填补此处空缺


  • 起首是ForEach扩大办法,几近每一个开辟职员都曾或多或少编写过此办法。此办法有两个变体,个中第二个变体包含一个从零入手下手的索引。
  • Buffer扩大办法将依据给定巨细把一个列举(enumeration)切分红多少个更小的列举。此办法利用一种事后加载和延缓加载相夹杂的加载体例。它会事后读取每一个具有N个元素的缓冲区,可是在前一缓冲区中的元素被完整利用之前,都不会从源对象读取更多的元素。
  • Catch扩大办法是个相称风趣的功效。在程序实行终了大概是抛出非常之前,程序都将从一个源对象读取数据。关于后一种情形(程序抛出非常),程序将接着入手下手从第二源对象读取数据。第二源对象多是IEnumerable实例大概是前往值为IEnumerable实例的函数。当利用后一种逻辑时,我们能够限定到某个特定范例的非常。
  • Defer扩大办法会承受一个函数,而不是IEnumerable实例作为参数。当且仅当某些情形试图列举时,该函数才会实行。
  • DistinctUntilChanged扩大办法会过滤失落一连的反复值。比方,[AABAAB]序列将成为[ABAB]。
  • Do扩大办法是ForEach的一种变体,Do办法的功效仅仅是当元素被列举时针对每一个元素实行其action托付办法。
  • DoWhile扩大办法除predicate托付办法不思索被列举项以外,和TakeWhile办法十分相似。
  • For扩大办法处置一个风趣的成绩。假定你有一份作者列表,和一个能前往图书列表的婚配搜刮函数。For办法将针对列表中的每位作者实行此搜刮函数,并前往一份串连起来的图书列表。
  • Generate扩大办法会前往一个列表,此办法将仿照C作风的for轮回。此办法所需的参数包含,前提函数,用于改动形态的迭代函数,和了局选择器。你能够将这类体例复杂了解为用与IEnumerable一样的体例来体现形态机。
  • If扩大办法利用一个断言(predicate)函数来断定前往两个列表中的一个。假如只供应了一个列表,那末关于此种毛病情形将会前往一个空序列。
  • Memoize扩大办法能够用于制止对源对象屡次列举。在某些方面,Memoize办法就和ToList办法相似,可是ToList对源对象最少能够列举一次,而Memoize对源对象最多只能列举一次。假如你告知Memoize有几预期读取程序,那末跟着某些项被一切预期读取程序利用今后,此办法能够从外部缓冲区中移除这些项。
  • Min和Max这两个扩大办法的事情体例正如办法名所传播鼓吹的一样。MinBy和MaxBy这两个扩大办法增添了关于供应单值函数的选项,以便你能够表达“选择发卖额最多的客户”等诸云云类的设法。
  • OnErrorResumeNext扩大办法可以串接两个或更多序列以取得分外的优点,即当任一序列发生毛病时将不会制止持续串连残剩的序列。
  • Repeat扩大办法会创立一个无限的大概无穷的列表,此办法一遍又一各处复杂反复不异的值。这个值能够是标量或是列表。
  • Retry扩大办法将试图列举某个源对象,直到列举乐成大概抛出指定命量的非常。
  • Return扩大办法将把一个标量值转换为一个仅包括该值的列表,再也无需显式创立长度为1的数组了。
  • Scan扩大办法关于聚合多个字段很有效。分歧于一样平常的聚合函数,Scan办法能够复合挪用,此体例年夜年夜削减了经由过程源对象的传送次数。比方,source.Scan(a=>Dollars+=a.Dollars).Scan(a=>Units+=a.Units)。
  • SkipLast和TakeLast这两个扩大办法是Take和Skip两个办法的镜像。
  • Throw扩大办法关于测试很有效,它会创立一个IEnumerable实例,当或人试图列举该实例时,它就会抛出非常。
想要懂得更多有关交互扩大(Ix)的信息,你能够寓目BartDeSmet的演示或下载实行版本。
检察英文原文:InteractiveExtensionsforLINQtoObjects
归根到底,net网页编程跨平台可以,但是要重新编写代码,否则还分什么J2EE/J2SE/J2ME呢!
飘灵儿 该用户已被删除
沙发
发表于 2015-1-19 20:07:13 | 只看该作者
关于ASP.NET功能上,ASP.NET比微软以前的ASP(96年出现)有更强大的library,更好的稳定性。ASP.NET可以使用.NETFramework中所有组件(也就是说.NET能实现的,ASP.NET一样能实现)。
小魔女 该用户已被删除
板凳
发表于 2015-1-20 05:51:08 | 只看该作者
碰到复杂点的问题都不知道能不能解决,现在有点实力的公司都选择自已在开源的基础上做开发。但没听说过有人在IIS上做改进的,windows、sqlserver集群方面的应用也很少见。
金色的骷髅 该用户已被删除
地板
发表于 2015-1-24 15:22:32 | 只看该作者
Asp.net脚本的出现,为ASP空间带来了更高的稳定性,同时也为程序员建站提供更高环境!
柔情似水 该用户已被删除
5#
 楼主| 发表于 2015-2-1 18:36:09 | 只看该作者
ASP在执行的时候,是由IIS调用程序引擎,解释执行嵌在HTML中的ASP代码,最终将结果和原来的HTML一同送往客户端。
再现理想 该用户已被删除
6#
发表于 2015-2-2 21:38:37 | 只看该作者
Asp.net:首先来说,Asp.net和Asp没什么关系,看着像是升级版本什么的,其实没什么联系。Asp是脚本编程,用的是ASP语言,而ASP.net用的是C#语言,完全不同的东西。
灵魂腐蚀 该用户已被删除
7#
发表于 2015-2-6 13:15:52 | 只看该作者
是指转换后的Servlet程序代码的行数。这给调试代码带来一定困难。所以,在排除错误时,可以采取分段排除的方法(在可能出错的代码前后输出一些字符串,用字符串是否被输出来确定代码段从哪里开始出错)。
愤怒的大鸟 该用户已被删除
8#
发表于 2015-2-9 13:28:20 | 只看该作者
微软又推出ASP.NET。这不是ASP的简单升级,而是全新一代的动态网页实现系统,用于一台WEB服务器建立强大的应用程序。是微软发展的新体系结构.NET的一部分,是ASP和.NET技术的结合。
第二个灵魂 该用户已被删除
9#
发表于 2015-2-10 17:24:53 | 只看该作者
当然我们在选择Asp.net主机是,除了要考虑服务提供商在版本是否是实时更新以外,机房的环境和配置也是非常重要的,通常选择骨干网的机房,在速度和稳定性上会非常有保证。
10#
发表于 2015-3-1 13:04:19 | 只看该作者
比如封装性、继承性、多态性等等,这就解决了刚才谈到的ASP的那些弱点。封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变。
爱飞 该用户已被删除
11#
发表于 2015-3-6 19:05:22 | 只看该作者
业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高,你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。
冷月葬花魂 该用户已被删除
12#
发表于 2015-3-20 14:35:00 | 只看该作者
是指转换后的Servlet程序代码的行数。这给调试代码带来一定困难。所以,在排除错误时,可以采取分段排除的方法(在可能出错的代码前后输出一些字符串,用字符串是否被输出来确定代码段从哪里开始出错)。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-22 20:32

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表