F # restricciones de tipo genérico y escritura de pato
Estoy tratando de implementar pato escribiendo F # y descubrí que puedes tener unRestricción del miembro en F # genéricos como sigue:
type ListEntryViewModel<'T when 'T : (member Name : string)>(model:'T) =
inherit ViewModelBase()
member this.Name with get() = model.Name
Sin embargo, el código anterior no se compilará cuando intente hacer referencia a la propiedad. Me sale un error de compilación:
Este código no es suficientemente genérico. La variable de tipo ^ T cuando ^ T: (miembro get_Name: ^ T -> cadena) no pudo generalizarse porque escaparía a su alcance.
¿Es posible implementar la escritura de pato a través de una restricción genérica?