2012-06-14 37 views
0

SignalR Chat sample,来电性质使用的代码集;设置和在vb.net获取SignalR呼叫者属性

Caller.name = newUser.Name; 

然后稍后,读取该属性;

string name = Caller.name; 

我有我自己的SignalR项目,但是这一次是vb.net,当我做同样的设置和获取主叫属性,这是行不通的

Public Sub SetCaller() 
    Caller.name = "tim" 
End Sub 

Public Sub GetCaller() 
    Dim name as string = Caller.name 
End Sub 

GetCaller( )引发“从类型'任务(Of Object)'转换为类型'String'的错误无效。”

完全相同的代码,但在C#工作正常;

public void SetCaller(){ 
    Caller.name = "tim"; 
} 

public void GetCaller(){ 
    string name = Caller.name; 
} 

我的代码在vb.net中是错误的吗?

回答

0

不,你在VB.NET语法上没有做错任何事。我唯一能想到的就是使用IDE检查Caller和Caller.name的类型。在VB.NET中,它不区分大小写,许多命名空间可能会自动导入,而不会在文件的顶部明确列出它们,所以很可能在VB中它使用的是与您期望的类型不同的类型。

+0

来电是SignalR.Hubs.StatefulSignalAgent两个vb.net和c# –

+0

而名称是什么属性的类型? –

+0

我无法访问它,因为它是一个动态对象? –