LiteDocumentService սերվիս
Բովանդակություն
Ներածություն
LiteDocumentService դասը նախատեսված է LiteDocument տիպի փաստաթղթերը տվյալների պահոցից բեռնելու, քեշում պահելու և քեշից կարդալու համար։
Մեթոդներ
ClearCache
public void ClearCache();
Հեռացնում է բոլոր փաստաթղթերը քեշից։
Load
public Task<LiteDocument> Load(int isn,
bool loadGrids = false,
bool throwExceptionIfDeleted = true,
bool lookInArc = true);
Բեռնում է փաստաթուղթը տվյալների պահոցից ըստ փաստաթղթի ներքին նույնականացման համարի։
Վերադարձնում է փաստաթղթի օբյեկտը, եթե հայտնաբերվել է։ Եթե չի հայտնաբերվել առաջացնում է սխալ կամ վերադարձնում է null կախված throwExceptionIfDeleted պարամետրից։
Պարամետրեր
isn
- Բեռնվող փաստաթղթի ներքին նույնականացման համարը։loadGrids
- Փաստաթղթի աղյուսակների բեռնման հայտանիշ։throwExceptionIfDeleted
- Պահանջվող փաստաթղթի հեռացված լինելու դեպքում սխալի գեներացման հայտանիշ։lookInArc
- Արխիվացված փաստաթղթի բեռնման հայտանիշ։ true արժեքի դեպքում փաստաթուղթը հիմնական պահոցում չգտնելու դեպքում փորձում է բեռնել նաև արխիվային տվյալների պահոցից։
Load
public Task<Dictionary<int, LiteDocument>> Load(IEnumerable<int> isnList);
Բեռնում է նշված ներքին նույնականացման համարներով փաստաթղթերը հիմնական տվյալների պահոցից՝ առանց աղյուսակների բեռնման և արխիվային տվյալների ստուգման:
Վերադարձնում է միայն այն փաստաթղթերի բազմությունը, որոնք գտնվել են տվյալների պահոցում։ Վերադարձվող Dictionary-ում բանալին փաստաթղթի ISN-ն է, իսկ արժեքը՝ փաստաթուղթը։
Պարամետրեր
isnList
- Փաստաթղթերի ներքին նույնականացման համարների ցուցակ։
LoadFromFolder
public Task<LiteDocument> LoadFromFolder(string folderID,
string folderKey,
bool loadGrids = false);
Բեռնում է փաստաթուղթը տվյալների պահոցից ըստ փաստաթուղթը պարունակող թղթապանակի ներքին անվան և թղթապանակի տարրի կոդի։
Վերադարձնում է փաստաթղթի օբյեկտը, եթե հայտնաբերվել է, հակառակ դեպքում վերադարձնում է null:
Պարամետրեր
folder
- Փաստաթուղթը պարունակող թղթապանակի ներքին անունը։folderKey
- Թղթապանակի տարրի կոդը։loadGrids
- Փաստաթղթի աղյուսակների բեռնման հայտանիշ։
LoadGrids
public Task LoadGrids(LiteDocument document, bool lookInArc = false);
Բեռնում է փաստաթղթի աղյուսակները տվյալների պահոցից և ավելացնում նշված փաստաթղթում։
Պարամետրեր
document
- Փաստաթուղթի օբյեկտ։lookInArc
- Արխիվացված փաստաթղթի աղյուսակների բեռնման հայտանիշ։ true արժեքի դեպքում փաստաթուղթը հիմնական պահոցում չգտնելու դեպքում փորձում է աղյուսակները բեռնել նաև արխիվային տվյալների պահոցից, եթե այնտեղ նույնպես փաստաթութը առկա չէ, առաջանում է սխալ։
LookUpInCache
public Task<LiteDocument> LookUpInCache(int isn,
TimeSpan checkAfter,
Ref<bool> isRefreshed = null,
bool lookInArc = true)
Փնտրում է փաստաթուղթը քեշում ըստ փաստաթղթի ներքին նույնականացման համարի և վերադարձնում։ Քեշում բացակայության դեպքում բեռնում է փաստաթուղթը տվյալների պահոցից, ավելացնում քեշում և վերադարձնում։
Պարամետրեր
isn
- Փնտրվող փաստաթղթի ներքին նույնականացման համարը։checkAfter
- Եթե քեշում պարունակվող փաստաթղթի թարմության վերջին ստուգումից անցել է ավելի շատ ժամանակ, քան նշված է այս պարամետրում, ապա ստուգվում է փաստաթղթի թարմությունը։ Եթե քեշում պարունակվող փաստաթղթի timestamp-ը չի համընկնում տվյալների պահոցում գրանցված timestamp-ի հետ, ապա փաստաթուղթը բեռնում է տվյալների պահոցից, հակառակ դեպքում վերադարձնում է քեշում առկա փաստաթուղթը։isRefreshed
- Ցույց է տալիս, արդյոք մեթոդի կանչի արդյունքում փաստաթուղթը բեռնվել է տվյալների պահոցից և թարմացվել քեշում, թե ոչ։lookInArc
- Արխիվացված փաստաթղթի բեռնման հայտանիշ։ true արժեքի դեպքում փաստաթուղթը հիմնական պահոցում չգտնելու դեպքում փորձում է բեռնել նաև արխիվային տվյալների պահոցից, եթե այնտեղ նույնպես փաստաթութը առկա չէ, առաջանում է սխալ։
LookUpInCache
public Task<LiteDocument> LookUpInCache(string folderID,
string folderKey,
TimeSpan checkAfter,
Ref<bool> isRefreshed = null)
Փնտրում է փաստաթուղթը քեշում ըստ փաստաթուղթը պարունակող թղթապանակի ներքին անվան և թղթապանակի տարրի կոդի և վերադարձնում։ Քեշում բացակայության դեպքում բեռնում է փաստաթուղթը տվյալների պահոցից, ավելացնում քեշում և վերադարձնում։
Պարամետրեր
folderID
- Փաստաթուղթը պարունակող թղթապանակի ներքին անունը։folderKey
- Թղթապանակի տարրի կոդը։checkAfter
- Եթե քեշում պարունակվող փաստաթղթի թարմության վերջին ստուգումից անցել է ավելի շատ ժամանակ, քան նշված է այս պարամետրում, ապա ստուգվում է փաստաթղթի թարմությունը։ Եթե քեշում պարունակվող փաստաթղթի timestamp-ը չի համընկնում տվյալների պահոցում գրանցված timestamp-ի հետ, ապա փաստաթուղթը բեռնում է տվյալների պահոցից, հակառակ դեպքում վերադարձնում է քեշում առկա փաստաթուղթը։isRefreshed
- Ցույց է տալիս, արդյոք մեթոդի կանչի արդյունքում փաստաթուղթը բեռնվել է տվյալների պահոցից և թարմացվել քեշում, թե ոչ։
RemoveFromCache
public void RemoveFromCache(int isn);
Հեռացնում է փաստաթուղթը քեշից՝ ըստ ներքին նույնականացման համարի։
Պարամետրեր
isn
- Փաստաթղթի ներքին նույնականացման համարը։
RemoveFromCache
public void RemoveFromCache(string docType);
Հեռացնում է նշված տեսակի բոլոր փաստաթղթերը քեշից։
Պարամետրեր
docType
- Փաստաթղթի տեսակը։