As per the documentation the following rules determine whether a class is a ViewComponent:
- Deriving from ViewComponent
- Decorating a class with the [ViewComponent] attribute, or deriving from a class with the [ViewComponent] attribute
- Creating a class where the name ends with the suffix ViewComponent
I am adding View components to an existing project, and in this project there are classes that are Suffixed "viewComponent" e.g. ReviewComponent
.
When I call IViewComponentSelector.SelectComponent
an exception is being thrown because the runtime cannot find an InvokeAsync method on these classes.
So my question is, is it possible to disable or remove rule #3 so that my existing classes aren't mistaken for View components, or is there a way to flag these classes as "not view components"?
CodePudding user response:
You can use the NonViewComponent
attribute on the classes in question, if that's a workable solution for you:
[NonViewComponent]
public class ReviewComponent
{
// ...