В VB.NET, как вы указываете Наследует / реализует в универсальном классе с несколькими ограничениями - PullRequest
2 голосов
/ 07 июня 2010

Когда я пишу следующий оператор в VB.Net (C # - мой обычный язык), я получаю «ожидаемый конец оператора», ссылающийся на оператор «Implements».

<Serializable()> _
<XmlSchemaProvider("EtgSchema")> _
Public Class SerializeableEntity(Of T As {Class, ISerializable, New}) _
Implements IXmlSerializable, ISerializable
...
End Class

Я пытаюсь эмулировать версию C #:

[Serializable]
[XmlSchemaProvider("MySchema")]
public class SerializableEntity<T> : IXmlSerializable, ISerializable where T : class, new()
{
....
}

Иногда я чувствую, что у меня 5 пальцев с VB.NET:)

1 Ответ

4 голосов
/ 07 июня 2010

В VB ImplementsInherits) - это отдельное предложение в теле класса (на том же уровне, что и члены класса), поэтому вам просто нужно удалить это _ продолжение строки:

<Serializable()> _
<XmlSchemaProvider("EtgSchema")> _
Public Class SerializeableEntity(Of T As {Class, ISerializable, New})
    Implements IXmlSerializable, ISerializable
    ...
End Class
...