Вы могли бы начать с чего-то вроде этого:
Sub doSomething(Of T)(filter as System.Func(Of T, Boolean))
From ou In ctxt.Users.Where(filter)
...
End Sub
Я не знаю тип ctxt.Users, но вы можете просто удалить универсальный T с вашим типом и передать Func (YOURTYPE, Boolean) to doSomething.
Тогда вы можете использовать его следующим образом:
doSomething(Function(p) p.UserName = username)