The integral of usual gradients on the boundary regions

Under some necessary setting:

from ngsolve import *
from netgen.csg import *
from ngsolve.webgui import Draw
L = 4
R = 1
geo = CSGeometry()
cyl = Cylinder(Pnt(0,0,0), Pnt(L,0,0), R)
right = Plane( Pnt(L,0,0), Vec(1,0,0))
left = Plane(Pnt(0,0,0), Vec(-1,0,0))
finitecyl = cyl * left * right
mesh = Mesh(geo.GenerateMesh(maxh=0.5))
V = VectorH1(mesh,order=1)
u,v = fes.TnT()

Main part of question:

then, if I write

n = CoefficientFunction((0, y/R, z/R))  # outward normal 
a = BilinearForm(-InnerProduct(Grad(u)*n,v)

where n is the outward unit normal.

Error information:
Trialfunction does not support BND-forms, maybe a Trace() operator is misssing.

My question is how to fix it?

The following is a way without errors or warnings:

a = BilinearForm(-InnerProduct(Grad(u).Trace()*n,v)

But if I use it, I will get the tangential gradient(I think it is the projection of the usual gradient into the tangent space) as said in

However, I want to get the usual gradient firstly, then multiply n, finally integral on the boundary.