void AddAttribute(DomRegion region, IAttribute attribute, string target = "")
        {
            var view     = SD.FileService.OpenFile(new FileName(region.FileName), false);
            var editor   = view.GetRequiredService <ITextEditor>();
            var context  = SDRefactoringContext.Create(editor.FileName, editor.Document, region.Begin, CancellationToken.None);
            var node     = context.RootNode.GetNodeAt <EntityDeclaration>(region.Begin);
            var resolver = context.GetResolverStateBefore(node);
            var builder  = new TypeSystemAstBuilder(resolver);

            using (Script script = context.StartScript()) {
                var attr = new AttributeSection();
                attr.AttributeTarget = target;
                attr.Attributes.Add(builder.ConvertAttribute(attribute));
                script.AddAttribute(node, attr);
            }
        }