![]() |
ObjectListe in .Net?
Hya,
ich wollte gerade mal ein Object von einer objectliste ableiten und da hab ich in der Hilfe gesehen das es die ObjectList und die normale List nur in System.Web.Mobile gibt bzw ASP.NET Mobile Controls. Kann ich solche Objecte verwenden auch wenn meine applikation nur fürs ausführen wie eine normale anwendung bestimmt ist, sprich keine onlineapplikation? bzw wenn ich das nicht nehmen kann/darf was nehm ich sonst? muss ich mir noch selber sowas schreiben? sowas gehört ja eigentlcih zu den grundwerkzeugen Greetz |
Re: ObjectListe in .Net?
Du hast da wohl die Hilfe auf das .NET Framework eingeschränkt.
Schon mal Borland.Vcl.Classes bzw. Borland.Vcl.Contnrs eingebungen? Damit hättest du die Listen wieder. Das .NET Framework bietet aber auch selbst Listen an: Wie die Klasse System.Collections.ArrayList. Und eine "normale" TList ala Win32 wirst du nicht mehr finden, da die Borland.Vcl.Classes.TList nun auch TObject als Datentyp hat statt wie bisher Pointer. TObjectList hat im Vergleich zu ArrayList oder TList aber den Vorteil, dass es die Methode Dispose() der enthaltenen Objekte aufruft und somit eine deterministische Freigabe der Objekte erlaubt. |
Re: ObjectListe in .Net?
Ich glaube die ArrayList ist die passendste entsprechung für eine TObjectList.
@jbg Wenn ein container aus dem Scope rennt werden ja auch alle enthaltenen Instanzen von der GC erfasst. eine strong typed Liste on IDisposable Items könnte mit minimalem Aufwand (zumindest in .Net 2.0 ;) ) das gleiche:
Delphi-Quellcode:
uses
System.Collections.Generic; type DisposableList = public class(List<IDisposable>, IDisposable) public procedure Dispose;virtual; end; implementation procedure DisposableList.Dispose; var Item : IDisposable; begin for Item in self do Item.Dispose(); end; |
Re: ObjectListe in .Net?
Zitat:
Zitat:
|
Re: ObjectListe in .Net?
Zitat:
Ich denke, es sollte hier möglich sein, anhand des Schnipsel eine eigene strongtyped collection zu bauen, die Dispose aufruft. Da es nur um den letzten Teil ging... |
Re: ObjectListe in .Net?
@ jbg
ich möchte keine Borland Routinen in meinen .NET Projekten verwenden da man dann nichtmehr 100% auf dem Framework arbeitet. Und ich möchte 100% Systemunabhänigkeit, benutze nur die WinForms und eigene davon abgeleitete Komponenten usw. also werd ich mir meine eigene objectlist bauen. oki vielen dank für eure hinweise. |
Re: ObjectListe in .Net?
Wie ich bereits schrieb: ArrayList düfte ein guter Ersatz für die TObjectList sein.
Solange du keine unmanaged Resources mit dir rumschleppst oder sonstiges Disposing deiner Items benötigst, wäre es wohl immer besser auf die GC zu vertrauen. Wenn Andreas' Einwand für dich gilt musst du halt nur das Dispose implementieren bzw. eine eigene Ableitung von CollectionBase bauens wenn du sichergehen willst, dass nur IDispoables in die Liste dürfen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:28 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz