直接在VB

时间:2015-12-18 17:33:41

标签: vb.net

在VB.Net中,属性基本上是两个方法,get_property和set_property,但是必须要有更多的方法,因为如果直接创建方法名称,它不会被视为属性其他课程。

因此,显然正在添加一些元数据,属性或其他东西。在编写方法时是否可以手动添加此元数据?如果是这样,怎么样?我找到了MethodSemanticsAttributes,但无法直接应用它。

编辑:一些代码,用于显示通常发生的事情以及我的目标。

Public Property MyProperty As String  ' auto property 

不使用autoproperties上面变成:

private _MyProperty As String
Public Property MyProperty As String
    Get
        Return _MyProperty
    End Get
    Set (ByVal value As String)
        _MyProperty = value
    End Set
End Property

以上两点都变成了

 private _MyProperty As String
 Public Function get_MyProperty As String
   Return _MyProperty
 End Function
 Public Sub set_MyProperty(ByVal value As String)
    _MyProperty = value
 End Sub

通过反射,您实际上可以获得对上述方法的引用并调用它们,因此上述实际上确实发生了。但是其他一些事情显然也会发生,因为如果我写上面两种方法,它们不会被视为单一属性,它们会被视为两种方法。

我的问题是那是什么东西?我的目标是做其他事情,然后能够调整一些东西,生成你通常不会做的代码。

2 个答案:

答案 0 :(得分:1)

您的问题的答案是“Property”关键字。

$reader = $this->container->get('debril.reader');
$feed = $reader->getFeedContent($url1,$url2, $date);
$items = $feed->getItems();

答案 1 :(得分:1)

请记住,VB.Net代码首先编译为中间语言(IL)。编译器为VB.Net中的属性创建的IL方法使用特殊名称,如果您尝试仅使用方法创建它们,那么这些名称将是非法的。