当前位置: 首页 > news >正文

Visual Studio 2008环境新特性

NET Framework 兼容支持

使用Visual Studio 2008可以进行基于多个.net framework 版本的开发,Visual Studio 2008同时支持framework 2.0/3.0和3.5几个版本。在不同的版本下它可以自动的框架特性工具箱,项目类型,引用,智能提示……过滤功能。我们升级到Visual Studio 2008也非常简单。

· ASP.NET AJAX和JavaScript智能客户端支持

ASP.NET AJAX成为.NET 3.5的一部分,除了包括ASP.NET AJAX 1.0的所有功能外,还集成了WebParts的UpdatePanel,与<asp:menu> and <asp:treeview>这样的控件的 ASP.NET 实现AJAX 集成。编写JavaScript提供了智能提示和调试的功能,还增加了JSON的全面支持,无论在WCF还是AJAX上都有广泛的应用。

· 全新的Web开发体验

Web设计器提供了分割视图编辑、嵌套母板页、以及强大的CSS编辑器集成。
ASP.NET提供了三个新的控件:<asp: ListView>、<asp: DataPager>、<asp: LinqDataSource>,这些控件对数据场景提供了非常好的支持,允许对输出的标识做完全的控制。

· 其他

Visual Studio 2008加入拼写检查器,可以在编译前对不正确的定义或返回类型进行检查。也优化了特别是自动提示和重构功能

支持智能部署ClickOnce;.集成对Office (VSTO)和Sharepoint 2007开发的支持。

性能上,运行一个后台编译器的速度比原来提高了一倍以上,而使用的内存不到原来的一半。VS2008精简了CLR的线程池,使各种类型的多线程应用程序也得到性能改进。

二、.Net FrameWork 3.5的新语法特性:

  • 自动属性(Auto-Implemented Properties)
  • 隐含类型局部变量(Local Variable Type Inference)
  • 匿名类型(Anonymous Types)
  • 对象与集合初始化器(Object and Collection Initializers)
  • 扩展方法(Extension Methods)
  • Lambda表达式和Lambda表达式树 (Lambda Expression and Lambda Expression Trees)
  • 语言级集成查询Linq系列支持(Language INtegrated Query)

自动属性举例:

private String name;

public String Name

{

get { return name; }

set { name = value; }

}

.NET 3.5下的新写法:public String Name { set; get; }

隐含类型局部变量举例:

var url = "http://www.168.com"; //url被识别String

var dt = new DataTable(); //dt被识别为DataTable

var status = false; //status被识别为Boolen

匿名类型举例:

var site1 = new { url = " http://1.2.3.4 ", title = "BBS", author = "Alex", qq = "4111852" };
var site2 = new { url = " http://www.168.com ", title = "Title", author = "Alex", qq = "4111852" };
site1.url = site2.url;

对象与集合初始化器举例:

User user = new User();
user.Id = 1;
user.Name = "Alex";
user.Age = 22;

.NET 3.5下新的写法:

var user = new User { Id = 1, Name = "Alex", Age = 22 };

扩展方法举例:

public static int Int(this HttpRequest request, string key)

{

return int.Parse(request[key]);

}

调用方法:int id = Request.Int("id");

Lambda表达式和Lambda表达式树举例:

string[] nums = { "8", "966", "55", "-14", "33", "2" };

//选择数组中第偶数个元素的数值平方并输出排序后的结果

nums.Select(n => Int32.Parse(n))

.Where(n => n % 2 == 0)

.Select(n => n * n)

.OrderBy(n => n)

.ToList()

.ForEach(n => Console.WriteLine(n));

n => n % 2 == 0,n => Console.WriteLine(n)等都是Lambda表达式。

Linq(Linq To Entity)举例:

public IList getUserLogin()

{

using (var TE = new TestEntities())

{

var lstLogin = (from user in TE.Users where user.Enabled = 1

select new Login

{

PW = user.Pass,

ID = user.Id

}).ToList();

return lstLogin;

}

}

关于.Net 3.5的语言特性,老赵在博客里有极为精妙的论述,强烈建议没有看过的朋友同学去读一下。

三、历史性的三大集成框架:

(太重要了,未来两到三年一定会成为招聘.Net开发的基本要求)

  • WPF (Windows Presentation Foundation)

WPF是微软新一代图形系统,为用户界面、2D/3D 图形、文档、视频、动画、三维等媒体提供了统一的描述和操作方法。基于DirectX 9/10技术的WPF不仅带来了前所未有的3D界面,而且其图形向量渲染引擎也大大改进了传统的2D界面,比如Vista中的半透明效果的窗体等都得益于WPF。 程序员在WPF的帮助下,要开发出媲美Mac程序的酷炫界面已不再是遥不可及的奢望。 WPF相对于Windows客户端的开发来说,向前跨出了巨大的一步,它提供了超丰富的.NET UI 框架,集成了矢量图形,丰富的流动文字支持flow text support,3D视觉效果和强大无比的控件模型框架。

对于开发人员和设计人员,WPF引擎统一了开发人员和设计人员体验文档、媒体和 UI 的方式他们从此只需学习一个模式。对于 .NET 开发人员,其框架是熟悉的,并且它最终将减少提供最佳用户体验和通信逻辑所需的代码行数。对于设计人员,WPF 提供的平台可消除内容、媒体和应用程序之间的边界。更重要的是,WPF可以使开发人员和设计人员像Web开发一样同步紧密地合作,也将大大提高C/S项目开发效率。

http://www.jsqmd.com/news/1130680/

相关文章:

  • Flutter 鸿蒙环境搭建避坑实战:Windows 下把 SDK、HDC 和 HAP 构建一次跑通
  • Redis 主从复制,哨兵,集群——(1)主从复制篇
  • 揭秘HBCTool:逆向Hermes字节码的终极利器
  • 如何重构现有RAG系统:模块化多模态集成技术指南
  • Arnis:从现实坐标到Minecraft世界的创意桥梁
  • SARCLIP框架:多模态预训练提升SAR图像理解
  • 2026年AI增长之星Codex:从开发者工具到通用知识工具的转变之路
  • Steam ROM Manager:告别游戏库混乱,打造你的终极游戏收藏中心
  • 工业控制系统智能散热方案设计与实现
  • 如何在游戏机上安装B站客户端?wiliwili让你的Switch变身全能追番神器
  • 一键转换PDF、Word、Excel等数十种文档到Markdown:MarkItDown终极指南
  • DXVK 2.7.1:Linux游戏性能提升40%的终极Direct3D转Vulkan技术指南
  • LLVM 编译器学习笔记之三十六-- 指令调度Instruction scheduling
  • Wireshark实战:从CTF流量分析到网络安全排查核心技巧
  • Redis 主从复制,哨兵,集群——(2)哨兵篇
  • Windows上配置完整Linux开发环境(二):Linux发行版Anaconda安装与使用
  • ByteDance-Seed/PAR三大核心模型对比:3scale_400M vs 3scale_400M_pdb vs 3scale_by_ratio_60M
  • accounting.js技术架构与React集成:现代前端货币格式化解决方案
  • docker-flask-example数据库管理:使用Flask-DB进行迁移与种子数据操作
  • Playwright自动化测试入门:从环境搭建到首个脚本实战
  • 终极字体转换指南:facetype.js让Three.js文字渲染更高效
  • 技术问答:管理和选择不同的R,如何做好R的笔记,使用 openxlsx 包
  • 星露谷物语自动化模组终极指南:提升农场效率的完整解决方案
  • PDFMathTranslate:学术PDF文档翻译的终极解决方案,完美保留公式与排版
  • 写vue3+ jsx+ts语法+ storybook展示的组件库
  • TPS65263三重降压转换方案在嵌入式系统中的应用
  • 为什么说AsPoem是诗词学习的最佳选择?探索5大创新功能
  • Altium Designer 元件库:从零到一的PCB设计加速器
  • Playwright CLI:面向AI编码代理的浏览器自动化完整指南
  • 交叉编译 attr