Visual Studio 2008
.NET Framework 2.0 projesi kapsamında çalışmak için bir uzantı yöntemi oluşturabilir miyim?.NET Framework 2.0 ile Uzantı Yöntemlerini Kullanma
cevap
ugly hack var, Uzantı yöntemleri çalışıyor. Net 2.0; ancak çerçevenizi sadece 3.5'e yükseltmek daha iyi olur. Diğer Kaynaklar: 1, 2.
Özetle (bağlantı # 2'den): Uzantı yöntemleri, [Uzantı] özniteliği ile etiketlenen normal statik yöntemlerdir. Bu özellik aslında sadece arkasındaki derleyici tarafından eklenir. .NET 3.5, System.Core içinde yaşıyor, bu nedenle, yalnızca kendi öznitelik tanımlayın:
namespace System.Runtime.CompilerServices
{
[AttributeUsage(AttributeTargets.Method, AllowMultiple = false, Inherited = false)]
public class ExtensionAttribute : Attribute
{
}
}
Link bozuk Sanırım – deostroll
@deostroll: Sabit. –
Kesinlikle. Birkaç hacky metodu var ama kullanıyorum, System.Core'u Mono project'dan almak, kendi kodunu kendi çözümümdeki System.Core adlı yeni bir .NET 2.0 Sınıf Kütüphanesine eklemek ve yeniden derlemek. MonoTODO özniteliklerini TODO yorumlarına çevirme ve AssemblyInfo.cs'yi düzeltme gibi düzeltmek için birkaç şey var, ancak harika çalışıyor. Şimdi LINQ ve Mono kaynağının 2.4 sürümü almak varsayarsak VS 2008
derlenmiş bir 2,0 projesinde uzatma yöntemleri hem kullanıyorum, sen altında kodunu bulmak gerekir:
<extracted directory>/mono-2.4/mcs/class/System.Core
Eğer VS 2005'te sıkışmışsınız, SharpDevelop'u indirebilir, System.Core dll'inizi 2.0 ile hedeflediğinizle derleyin, derlenmiş derleme için bir referans ekleyin ve işe yarayabilir, ancak VS 2005'in bir sorunu olup olmadığını bilmiyorum uzantısı sözdizimi ile veya değil. Sana biraz dudak vereceğini hayal ediyorum.
Anahtar, VS 2008'de derlenmiştir. Hala VS 2005 ile karşılaştım :( –
VS2008 etiketini gördüm ve 2008'i kabul ediyorum. Eğer 2005’te iseniz, önceden derlenmiş bir ikili bulabilir veya SharpDevelop (Bir bağlantı ile güncelleyeceğim) Eğer Win2K'da bir derleme yapıyorsanız, 3.5 çerçeveyi desteklemeyeceğinden maalesef şanssızsınız. –
- 1. .NET 2.0'da uzantı yöntemlerini mi kullanıyorsunuz?
- 2. eksik uzantı yöntemi AddJwtBearerAuthentication() 2.0
- 3. .NET 2.0 ile SAML
- 4. ADFS 2.0'ı non -.NET hizmetleriyle kullanma
- 5. .NET 2.0
- 6. .Net çerçeve 2.0 Yapılandırma Aracı
- 7. Play Framework 2.0 ile dosya indirme
- 8. .NET 2.0 veya 3.0'da uzantı yöntemleri ve LINQ kullanabilir miyim?
- 9. , .NET Framework 3.5
- 10. .net 2.0 IRC bileşeni
- 11. DomainName \ AccountName .NET Framework ile nasıl edinilir?
- 12. .NET Framework 4 ile Dinamik LINQ API'si
- 13. ORM .net Entity Framework?
- 14. Ben .NET Standard 2.0 projemi güncellemeye çalıştık
- 15. Dosya içeriğini okumak için. Net Compact Framework
- 16. .Net Framework dokümantasyon konumu
- 17. Hangi .net framework sürümü
- 18. .NET 2.0, .NET 3.5 yükleyicisine dahil mi?
- 19. AddEntityFrameworkStores yalnızca .NET Core 2.0
- 20. Java'nın String.replaceAll() regex işlevlerini veya yöntemlerini kullanma
- 21. iOS 8 Uzantı iCloud Verilerini Kullanma
- 22. CSharpCodeProvider'ı .net 4.5 beta ile kullanma
- 23. .NET Framework, Win98'de kullanılabilir mi?
- 24. alan tespit .net çekirdek 2.0
- 25. Bir dize, .net framework 4
- 26. Yii Framework 2.0 Kurallar Tarih Validator
- 27. Grafikler çerçevesini kullanma. Swift 2.0
- 28. .NET taşınabilir altkümesiyle System.Threading.Tasks.Parallel'i kullanma
- 29. Wix ve .NET Framework (önkoşul)
- 30. JQERY kullanarak .NET Framework 3.5
Ayrıntılar için [blogum] bölümüne bakın (http://colins-corner.blogspot.com/2009/01/extension-methods-in-net-20.html). –