Pasar parámetro personalizado en atributo personalizado - ASP.NET MVC

Mi objetivo es crear un atributo personalizado como System.ComponentModel.DataAnnotations.Display que me permite pasar un parámetro.

Ej .: En System.ComponentModel.DataAnnotations.Display puedo pasar un valor al parámetro Nombre

[Display(Name = "PropertyName")]
public int Property { get; set; }

Quiero hacer lo mismo pero en controladores y acciones como a continuación

[CustomDisplay(Name = "Controller name")]
public class HomeController : Controller

y luego llene un elemento ViewBag o ViewData con su valor.

¿Puede alguien ayudarme con esto?

Gracias.

Respuestas a la pregunta(1)

Su respuesta a la pregunta