我正在爲現有的Asp.net 2.0應用程序添加功能。我想使用一些.net 3.5功能,所以我添加了一些.net 3.5程序集到我的web配置中。我添加了System.Core和System.Xml.Linq。如何將System.Collections.Generic 3.5添加到Asp.net 2.0?
我想使用IEnumerable版本3.5,我需要添加什麼庫到web配置?
我正在爲現有的Asp.net 2.0應用程序添加功能。我想使用一些.net 3.5功能,所以我添加了一些.net 3.5程序集到我的web配置中。我添加了System.Core和System.Xml.Linq。如何將System.Collections.Generic 3.5添加到Asp.net 2.0?
我想使用IEnumerable版本3.5,我需要添加什麼庫到web配置?
您添加的引用程序是這樣的:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<compilation>
<assemblies>
<add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
</assemblies>
</compilation>
</system.web>
<system.codedom>
<compilers>
<compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CSharp.CSharpCodeProvider,System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" warningLevel="4">
<providerOption name="CompilerVersion" value="v3.5"/>
<providerOption name="WarnAsError" value="false"/>
</compiler>
</compilers>
</system.codedom>
</configuration>
因爲在你的評論中,你提到你正在嘗試使用SequenceEqual,你的問題是使用System.Linq.Eumerable
類的問題之一。該類將大部分(如果不是全部)Linq定義爲對象,則將其定義爲IEnumerable
和IEnumerable<T>
類型中的一大組擴展方法。
該類在System.Core.dll程序集中定義(請參閱http://msdn.microsoft.com/en-us/library/system.linq.enumerable.aspx以供參考)。
你說你已經添加了一個System.Core參考,所以我想你可能沒有在文件頂部添加using System.Linq;
。
此外,擴展方法尚未添加到2.0版的C#中,所以如果您使用2.0編譯器,則必須將該方法作爲靜態方法調用。取而代之的
sequenceA.SequenceEqual(sequenceB)
,你將不得不使用
Enumerable.SequenceEqual(sequenceA, sequenceB)
您需要安裝.NET你正在運行的機器上3.5 SP1,則需要使用至少Visual Studio 2008中,和您需要進入您的項目屬性並將目標框架設置爲3.5。
如果您仍在使用Visual Studio 2005,可能有一些技巧可以從.net 3.5中調用編譯器,但它並不是非常好,也不是很好的支持。
此外,請確保您在.cs文件中有using System.Linq;
語句,或者如果您使用的是內嵌腳本塊,則在.aspx文件中具有等效語句。 SequenceEquals
是IEnumerable類的extension method。
我沒有運行該解決方案。我只是編輯文件,因爲它不是一個我不需要編譯的應用程序。 – HardCode
@HardCode所以你正在編輯.aspx文件? –
沒有IEnumerable'的'3.5版本(也沒有'IEnumerable的',對於這個問題)。你想寫什麼代碼,你面臨什麼障礙? –
phoog
我基本上這樣做「msdn.microsoft.com/en-us/library/bb546137(v=vs.90).aspx」。 .net 2.0缺少SequenceEqual函數。 – HardCode