TemplateService սերվիս
Բովանդակություն
Ներածություն
TemplateService դասը նախատեսված է տպելու ձևանմուշների նկարագրության հետ աշխատանքը ապահովելու համար։
Տե՛ս նաև ITemplateSubstitutionService տպելու ձևանմուշների լրացման համար։
ExistsTemplate
public Task<bool> ExistsTemplate(string name, string type)
Ստուգում է տպելու ձևանմուշի նկարագրության առկայությունը տվյալների պահոցի TEMPLATES աղյուսակում։
Պարամետրեր
name- Տպելու ձևանմուշի ներքին անուն:type- Տպելու ձևանմուշի տիպ:
Օրինակ
// templateNameType => "AgrState\7"
var (_, templateName, templateType) = TemplateService.GetTemplateNameAndType(templateNameType);
if (!await templateService.ExistsTemplate(templateName, templateType))
{
throw new RESTException(string.Format("'{0}' անունով և '{1}' տիպով ձևանմուշ գոյություն չունի".ToArmenianANSI(), templateName, templateType));
}
GetDefinition
public Task<TemplateDefinition> GetDefinition(string name, string type)
Վերադարձնում է տպելու ձևանմուշի նկարագրությունը տվյալների պահոցի TEMPLATES աղյուսակից՝ ըստ տպելու ձևանմուշի ներքին անվան և տիպի։
Ֆայլի արժքների տեղադրման համար տե՛ս LoadTemplateFile։
Պարամետրեր
name- Տպելու ձևանմուշի ներքին անուն:type- Տպելու ձևանմուշի տիպ:
GetTemplateNameAndType
public static (bool result, string templateName, string templateType)
GetTemplateNameAndType(string templateNameWithType, bool isBackSlash = true)
Բաժանում է templateNameWithType պարամետրում միավորված տպելու ձևանմուշի ներքին անունը (կոդը) և տիպը:
Վերադարձնում է՝
result- Ցույց է տալիս, արդյոք բաժանումը հաջողվել է:templateName- Տպելու ձևանմուշի ներքին անուն: Բաժանման չհաջողվելու դեպքում վերադարձնում էtemplateNameWithTypeպարամետրի արժեքը։templateType- Տպելու ձևանմուշի տիպ: Բաժանման չհաջողվելու դեպքում վերադարձնում էstring.Empty։
Պարամետրեր
templateNameWithType- Տպելու ձևանմուշի միավորված ներքին անուն (կոդ) և տիպ։isBackSlash-trueարժեքի դեպքում բաժանումը կատարվում է ըստ"\"նիշի, հակառակ դեպքում՝ ըստ"/"նիշի։
Օրինակ
// templateNameType => "AgrState\7"
var (_, templateName, templateType) = TemplateService.GetTemplateNameAndType(templateNameType);
// templateName => "AgrState"
// templateType => "7"
if (templateType != Constants.TempTypeHTML)
{
throw new RESTException("Ձևանմուշի տիպը պետք է լինի Html".ToArmenianANSI());
}