找回密码
 点一下
查看: 3662|回复: 24

暗暗~~装得累死~~Visual C# Codename "Oracs" Express Edition CTP Beta1 终于装好了~~

  [复制链接]
发表于 2007-4-25 16:55:30 | 显示全部楼层 |阅读模式
超长的标题~~

安装得也超累~~这东西安装过程中需要下载整整1G的内容……[s:40]

包括.Net FX 3.5 Beta和VC#Express 9.0 Beta安装程序~~

然后我发现它这个1G的.Net FX 3.5 5 Beta安装程序竟然包括了1.1-3.55Beta的所有版本~~于是我想要不我直接先安装3.5吧~~这样可以少装1.1、2.0、3.0……结果这时候发现3.5Beta的下载链接从MSDOWNLOAD上消失了……微软又把这东西收回去了~~

只好任由这安装程序拖下这完整的1G内容了吗?~~照我这垃圾网速一天都不可能下完的~~

结果研究了半天~~终于从安装程序中抠出了.Net FX 3.5的实际位置暗暗~~于是下之~~装之~~终于可以老~~


好辛苦~~
无标题.jpg
 楼主| 发表于 2007-4-25 16:58:57 | 显示全部楼层
不过我发现Orcas的旧工程转换新工程的容易多了~~对之前版本的兼容性极好~~

以前用2003的转2005的一堆Waring和Error~~结果这里0Errors 0Warning~~暗暗~~

但是却有非常多的基于3.5的新能力~~


测试LINQ中~~嗯嗯~~
回复

使用道具 举报

 楼主| 发表于 2007-4-25 17:05:23 | 显示全部楼层
嗯嗯~~照着MSDN上一个例子弄的~~
我现在已经不想用回VS2005老~~
这个虽然是Express版的却好玩多了嗯嗯~~

[codes=C#]
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections;




namespace ConsoleApplication1
{
    class app
    {
        static void Main()
        {
            string[] names = { "Burke", "Connor", "Frank",
                       "Everett", "Albert", "George",
                       "Harris", "David" };

            IEnumerable expr = from s in names
                               where s.Length == 5
                               orderby s
                               select s.ToUpper();

            foreach (string item in expr)
                Console.WriteLine(item);
        }
    }
}
[/codes]

输出是这样:

捕获.JPG
回复

使用道具 举报

发表于 2007-4-25 17:35:54 | 显示全部楼层
只会SDK和MFC,NET盲~
回复

使用道具 举报

 楼主| 发表于 2007-4-25 17:47:22 | 显示全部楼层
嗯嗯~~还有新增的数据类型var~~
有些类似Java~~不过还是不大一样哦~~

[codes=C#]
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;


class Program
{
    static void Main(string[] args)
    {
        var aaa = 123;
        var bbb = 452;
        var ccc = aaa + bbb;
        var god = "1231";
        var asd = ccc + god;
        Console.WriteLine(asd);
    }
}
[/codes]

捕获.JPG
回复

使用道具 举报

发表于 2007-4-25 17:59:58 | 显示全部楼层
5555
小霸王其乐无穷
回复

使用道具 举报

 楼主| 发表于 2007-4-25 18:11:03 | 显示全部楼层
LINQ 果然强大嗯嗯~~不过它其实是早先.NET FX就有些了~~

然而.NET FX 3.5的更主要应用还在对ASP.NET和AJAX的支持上说~~其他的东西都没装~~所以还没体验过说~~
回复

使用道具 举报

发表于 2007-4-25 18:16:54 | 显示全部楼层
这又素虾米...
回复

使用道具 举报

 楼主| 发表于 2007-4-25 18:21:25 | 显示全部楼层
LINQ ~~Language Integrated Query也就是.NET 语言集成查询啦~~

其实只要看这一段就可以了~~

            IEnumerable expr = from s in names
                               where s.Length == 5
                               orderby s
                               select s.ToUpper();

直接应用查询语言的奇妙咚咚~~不需要SQLCommad和游标什么杂七杂八的老~~
回复

使用道具 举报

发表于 2007-4-25 20:03:31 | 显示全部楼层
555555。好强大的东西。
回复

使用道具 举报

 楼主| 发表于 2007-4-26 12:42:24 | 显示全部楼层
还有一个功能是扩展方法~~可以用this关键字给已有类添加新的方法~~而不用直接去编辑那个类~~
下面的例子就是给string类添加了ToFloat()这个方法~~

嗯嗯~~一个计算2者之和的简单计算器~~
通常我们要把string变成float得这样用:
float.Parse("123");
而加入了新的扩展方法~~就可以这样用:
"123".ToFloat();



[codes=c#]
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            label1.Text=(textBox1.Text.ToFloat()+textBox2.Text.ToFloat()).ToString();
        }
    }

    public static class ExtensionMethods
    {
        public static float ToFloat(this string s)
        {
            return float.Parse(s);
        }
    }
  
}
[/codes]

捕获.JPG
回复

使用道具 举报

发表于 2007-4-26 14:54:11 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

 楼主| 发表于 2007-4-26 15:32:32 | 显示全部楼层
还有自动属性这种功能~~可以用{get;set;}自动为一个属性产生匿名变量~~
而不用写一个变量再写一个属性~~

[codes=C#]
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

class Program
{
    static void Main(string[] args)
    {
        Person.Age = 15;
        Console.WriteLine(Person.Age.ToString());
    }
}

public class Person
{
    public static int Age { get; set; }
}
[/codes]
回复

使用道具 举报

 楼主| 发表于 2007-4-26 15:50:35 | 显示全部楼层
对象初始化器可以在初始化对象的时候附带设定对象的属性~~

集合初始化器可以在初始化集合的时候添加集合中元素~~

[codes=C#]
      Person person = new Person { FirstName="Scott", LastName="Guthrie", Age=32 };

   List<Person> people = new List<Person> {
             new Person { FirstName = "Scott", LastName = "Guthrie", Age = 32 },
             new Person { FirstName = "Bill", LastName = "Gates", Age = 50 },
             new Person { FirstName = "Susanne", LastName = "Guthrie", Age = 32 }
      };
[/codes]
回复

使用道具 举报

发表于 2007-4-26 21:48:49 | 显示全部楼层
[s:40]


.............
  完全,彻底,全部的看不懂,
回复

使用道具 举报

发表于 2007-4-26 23:07:04 | 显示全部楼层
好强大~
回复

使用道具 举报

发表于 2007-4-27 11:30:41 | 显示全部楼层
的确很方便啊
回复

使用道具 举报

发表于 2007-5-5 01:31:13 | 显示全部楼层
没玩过c#
不过怎么看怎么感觉和java咋就这么像呢?
回复

使用道具 举报

发表于 2007-5-5 04:22:57 | 显示全部楼层
因为MS和我一样喜欢抄袭 [s:41]
回复

使用道具 举报

发表于 2007-5-5 07:52:44 | 显示全部楼层
其实来说呢。大部分JAVA语法在C#中都可以使用。
事实上不同的地方就是String。JAVA素大写的。C#素小写的。
嗯嗯。这素偶同学总结出来的经验呢。
当时偶们在看一段代码。然后偶问他。这素JAVA还素C#?
他看了一下,然后很兴奋的告诉我。是C#。因为string是小写的。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-9-28 23:19 , Processed in 0.116093 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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