Sdílet prostřednictvím


DataViewRow Třída

Definice

Logický řádek dat Může to být řádek samostatného IDataView řádku.

public abstract class DataViewRow : IDisposable
type DataViewRow = class
    interface IDisposable
Public MustInherit Class DataViewRow
Implements IDisposable
Dědičnost
DataViewRow
Odvozené
Implementuje

Konstruktory

DataViewRow()

Logický řádek dat Může to být řádek samostatného IDataView řádku.

Vlastnosti

Batch

To poskytuje prostředky pro odsouhlasení více řádků, které byly vytvořeny obecně z GetRowCursorSet(IEnumerable<DataViewSchema.Column>, Int32, Random). Při získávání sady je potřeba, aby paralelní zpracování pokračovalo, vždy mít cíl, že původní objednávka by měla být obnovitelná. Všimněte si, zda se uživatel stará o původní pořadí v jedné konkrétní aplikaci je zcela jiný příběh (většina volajících z toho jako praktická záležitost není, jinak by to nevolali), ale alespoň v zásadě by mělo být možné rekonstruovat původní pořadí, které by se dostalo z identicky nakonfigurovaného GetRowCursor(IEnumerable<DataViewSchema.Column>, Random). Takže: pro libovolnou implementaci kurzoru by měla být dávkové čísla nespadající. Kromě toho by se dané číslo dávky mělo objevit pouze v jednom z kurzorů, jak je vráceno GetRowCursorSet(IEnumerable<DataViewSchema.Column>, Int32, Random). Tímto způsobem je pořadí určeno číslem dávky. Operace, která tyto kurzory srovná za účelem vytvoření konzistentního jediného kurzoru, může to udělat tak, že nakreslete jeden kurzor mezi všemi kurzory v sadě, které mají k dispozici nejmenší dávkové číslo.

Všimněte si, že neexistuje žádný návrh, že dávky pro určitou položku budou konzistentní od kurzoru po kurzor, s výjimkou konzistence, která vede ke stejnému celkovému pořadí. Stejná položka může mít různá dávková čísla od jednoho kurzoru do jiného. Není také nutné, aby se vůbec zobrazovalo žádné dané číslo dávky. Jedná se pouze o mechanismus pro obnovení řazení z potenciálně libovolného dělení dat. Z toho samozřejmě vyplývá, že vzhledem k dávce jako vlastnosti dat je zcela neplatná.

Position

To se zvýší, když se změní základní obsah, což klientům umožňuje zjistit změnu. Hodnota -1 by měla být, pokud je objekt ve stavu, ve kterém nelze načíst hodnoty. Zejména pro DataViewRowCursor, to bude dříve MoveNext() , pokud se volá poprvé nebo po prvním MoveNext() zavolání a vrátí false.

Všimněte si, že tato pozice není umístěná v podkladových datech, ale pouze umístění tohoto kurzoru. Pokud například někdo otevřel sadu paralelních streamovaných kurzorů nebo přemíchaný kurzor, měl by každý takový kurzor první platnou položku vždy mít pozici 0.

Schema

SchemaZíská , který poskytuje informace o názvu a typu proměnných (tj. sloupce v systému typů ML.NET) uložené v tomto řádku.

Metody

Dispose()

Implementace likvidační. Hovory Dispose(Boolean) s true.

Dispose(Boolean)

Jednorázová metoda pro jednorázový vzor. Tato výchozí implementace nic nedělá.

GetGetter<TValue>(DataViewSchema+Column)

Vrátí delegáta getter hodnoty, která načte hodnotu dané columnhodnoty z řádku. To vyvolá, pokud sloupec není v tomto řádku aktivní nebo pokud se typ TValue liší od typu tohoto sloupce.

GetIdGetter()

Getter pro 128bitovou hodnotu ID. Je běžné, že objekty obsluhují více DataViewRow instancí iterace nad tím, co má být stejná data, například v IDataView sadě kurzorů vytvoří stejná data jako sériový kurzor, pouze dělený a zamíchaný kurzor vytvoří stejná data jako sériový kurzor nebo jakýkoli jiný zamíchaný kurzor, jen zamíchal. ID existuje pro aplikace, které potřebují sladit, která položka je skutečně která. V ideálním případě by toto ID mělo být jedinečné, ale z praktických důvodů stačí, pokud jsou kolize jednoduše mimořádně nepravděpodobné.

Všimněte si, že toto ID, i když musí být konzistentní pro více datových proudů podle sémantiky výše, se nepovažuje za součást dat za sekundu. Pokud tedy chcete použít příklad zobrazení dat konkrétně, musí jedno zobrazení dat vykreslovat konzistentní ID napříč všemi kurzory, ale vůbec neexistuje žádný návrh, že pokud by se "stejná" data zobrazila v jiném zobrazení dat (například transformace, ukládání, ukládání nebo cokoli), že ID mezi dvěma různými zobrazeními dat by měla jakýkoli rozpoznatelný vztah.

IsColumnActive(DataViewSchema+Column)

Vrátí, zda je daný sloupec v tomto řádku aktivní.

Platí pro