精华帖 (5) :: 良好帖 (2) :: 新手帖 (1) :: 隐藏帖 (1)
|
|
---|---|
作者 | 正文 |
发表时间:2009-05-21
RednaxelaFX 写道 jjx 写道 半夜下完安装fx试了一下
csc 4.0 编译出来的东西必须要.net 4.0才能运行了 嗯我刚发了一帖关于.NET 4的单独下载的…… 新的C#编译器默认依赖的mscorlib.dll、System.dll、System.Core.dll等都是对应.NET 4的,当然只能在后者上运行。但是也可以设定参数让编译器引用老版本的程序集,那样就可以在老版本的.NET上运行。 这次有点特别,新的语言特色,必须要在.net 4.0下才行,dynamic, 缺省参数等,不像以前,编译后能照样跑在.net 2中,最多复制几个不存在的dll过去。这样就意味了.net 4.0彻底不能跑在windows 2000上了。 |
|
返回顶楼 | |
发表时间:2009-05-22
C# 4.0新特性是契约式编程,前个月下载了文档和说明,竟然现在都还没看。人老了,心也散了。
|
|
返回顶楼 | |
发表时间:2009-05-22
logicgate 写道 zxzheaven 写道 记得在用vs2003的时候,还有个J#,不知道多久被去掉了
最早的还有一个visual J,那时候microsoft还支持java的。 嗯那个是Visual J++。官司后微软只能实现到Java 1.1.4,所以Visual J++就被废弃了。 在.NET Framework刚出的时候为了吸引Java程序员,所以保留了一个叫Visual J#的版本。不过那个也在Visual Studio 2008被抛弃了…… jjx 写道 RednaxelaFX 写道 jjx 写道 半夜下完安装fx试了一下
csc 4.0 编译出来的东西必须要.net 4.0才能运行了 嗯我刚发了一帖关于.NET 4的单独下载的…… 新的C#编译器默认依赖的mscorlib.dll、System.dll、System.Core.dll等都是对应.NET 4的,当然只能在后者上运行。但是也可以设定参数让编译器引用老版本的程序集,那样就可以在老版本的.NET上运行。 这次有点特别,新的语言特色,必须要在.net 4.0下才行,dynamic, 缺省参数等,不像以前,编译后能照样跑在.net 2中,最多复制几个不存在的dll过去。这样就意味了.net 4.0彻底不能跑在windows 2000上了。 新的C#语言特性依赖于Microsoft.CSharp.dll与4.0版的mscorlib.dll和System.Core.dll等,自然是不能用在老版本的.NET上。即便是3.5推出的时候,LINQ也无法在3.5以下的版本使用;要用的话就得自己实现LINQ需要的库或者用Mono的实现。 只要你指定目标.NET版本,C#编译器就会引用对应版本的程序集,那样就能保证可以部署到指定版本上。代价是不能用新特性,但这也正常吧,呵呵 RCFans 写道 C# 4.0新特性是契约式编程,前个月下载了文档和说明,竟然现在都还没看。人老了,心也散了。
那个不是C# 4的新特性而是.NET Framework 4的新特性。标准库里的Code-by-Contract支持可以用在任意.NET语言中。 |
|
返回顶楼 | |
发表时间:2009-05-22
最后修改:2009-05-22
linq 可以用在.net 2.0上的 ,包括linq to sql 和所有的c# 3.0语言特性,只要复制system.core,system.data.linq等一些dll到bin目录即可,目前俺就在这么用
|
|
返回顶楼 | |
发表时间:2009-05-22
jjx 写道 linq 可以用在.net 2.0上的 ,包括linq to sql 和所有的c# 3.0语言特性,只要复制system.core,system.data.linq等一些dll到bin目录即可,目前俺就在这么用
那你必须有C# 3.0的编译器,如果你是编译完到.NET 2.0的环境中运行,那是没有问题 |
|
返回顶楼 | |
发表时间:2009-05-22
jjx 写道 linq 可以用在.net 2.0上的 ,包括linq to sql 和所有的c# 3.0语言特性,只要复制system.core,system.data.linq等一些dll到bin目录即可,目前俺就在这么用
不知道这样做有没有违反.NET Framework的license agreement……不然就不会有那么多解决方案是用Mono的Systemm.Core.dll和System.Data.Linq.dll了 |
|
返回顶楼 | |
发表时间:2009-05-22
Mono的security比MS的好,尤其是在证书的处理上
|
|
返回顶楼 | |
发表时间:2009-05-22
RCFans 写道 Mono的security比MS的好,尤其是在证书的处理上 Mono的security,嗯看什么方面。Mono一直都没有实现CAS,最近才在Moonlight里实现了某种程度的sandbox。我还没在Mono上用过证书相关的功能,可以稍微介绍下这方面的特点么? |
|
返回顶楼 | |
发表时间:2009-05-22
RednaxelaFX 写道 jjx 写道 linq 可以用在.net 2.0上的 ,包括linq to sql 和所有的c# 3.0语言特性,只要复制system.core,system.data.linq等一些dll到bin目录即可,目前俺就在这么用
不知道这样做有没有违反.NET Framework的license agreement……不然就不会有那么多解决方案是用Mono的Systemm.Core.dll和System.Data.Linq.dll了 能否举个例子? 国内有人用mono开发么? 除了那个网站外。 |
|
返回顶楼 | |
发表时间:2009-05-23
mathgl 写道 RednaxelaFX 写道 jjx 写道 linq 可以用在.net 2.0上的 ,包括linq to sql 和所有的c# 3.0语言特性,只要复制system.core,system.data.linq等一些dll到bin目录即可,目前俺就在这么用
不知道这样做有没有违反.NET Framework的license agreement……不然就不会有那么多解决方案是用Mono的Systemm.Core.dll和System.Data.Linq.dll了 能否举个例子? 国内有人用mono开发么? 除了那个网站外。 如果是说用Mono的库来放在.NET 2.0上运行LINQ的话,用这几个关键字在Google上搜索一下就好: mono system.core.dll linq ".NET" 2.0 搜索结果里会包括StackOverflow上的一个相关问题:LINQ on the .NET 2.0 Runtime 关于复制.NET 3.5的DLL到自己的应用程序里,Deploying ASP.NET MVC on ASP.NET 2.0这篇去年的blog提到了这么一句话: Scott Hanselman 写道 * Copied System.Core.dll local to the web apps /bin folder
It's that final step that we're not technically allowed to do, ... 我印象当中.NET Framework的redistribution是受限制的,用户只能把微软提供的.NET安装包整体再发布而不能只抽出里面的DLL与自己的应用捆绑在一起。不太肯定我也没有记错。但是用Mono的类库就没有这样的限制。 至于说使用Mono开发的实际部署了的网站……国内这是个什么状况我不清楚,但JavaEye上貌似有会员是以Mono为基础来部署ASP.NET的程序的。让他们来说说吧。 国外的一个例子是Mindtouch的Deki Wiki。IronRuby的官方网站,http://ironruby.net/就是用它来架设的。 |
|
返回顶楼 | |