无法隐式将类型'void'转换为'object'MVC cshtml方法调用

Jaz*_*ter 1 asp.net-mvc razor signalr

我在Mvc-Project中从一个cshtml文件中调用一个简单的方法时遇到了一些问题.这是给我错误的代码:

@{
var chatHub = new TestClass();
}
@chatHub.TestMethod();
Run Code Online (Sandbox Code Playgroud)

这是"@ chatHub.TestMethod();" 这让我觉得"不能隐式地将类型'void'转换为'object'"错误.

这是TestMethod:

public void TestMethod()
        {
            ChatHub test = new ChatHub();
            //var context = GlobalHost.ConnectionManager.GetHubContext<ChatHub>();
            test.JoinGrupprum1();
        }
Run Code Online (Sandbox Code Playgroud)

这是Joingrupprum1:

public void JoinGrupprum1()
        {
            Groups.Add(Context.ConnectionId, "Grupprum1");
        }
Run Code Online (Sandbox Code Playgroud)

知道问题是什么?

Cod*_*ter 8

随着@之前@chatHub.TestMethod();你指示剃刀打印结果chatHub.TestMethod()的HTML.为了打印某些东西,它会调用object.ToString()结果.

但是,您的方法是void,因此不返回任何内容.如果您不打算打印任何内容,请将其移到大括号内:

@{
    var chatHub = new TestClass();
    chatHub.TestMethod();
}
Run Code Online (Sandbox Code Playgroud)