在 C# 中用 where 继承到 VB

inheritance with where in C# to VB

谁能解释一下下面函数的含义?抱歉,我是 VB 开发人员,我无法理解以下语法。转换器工具将无意义的代码转换为 VB 代码。

调用此函数的地方,调用函数如下所示。这个 T 实体的第一个参数发生了什么,它没有用作参数?它的目的是什么?

  model.SeName = category.ValidateSeName(model.SeName, category.Name, true);

如果你也能给我 VB 中的相等代码,那将会很有帮助。 谢谢

这是一个通用的扩展方法,VB.NET supports it also:

Public Module MyExtensionMethods

    <System.Runtime.CompilerServices.Extension()> _
    Public Function ValidateSeName(Of T As { BaseEntity, ISlugSupported })(entity As T, seName As String, name As String, ensureNotEmpty As Boolean) As String

    End Function

End Module

where(在 C# 中)或 As(在 VB.NET 中)定义的约束与继承无关。它只是告诉编译器 T.

只允许这些类型