是否应该调用异步SignalR集线器方法MethodNameAsync()

时间:2019-07-12 11:59:59

标签: c# coding-style signalr

通常,在C#中,调用异步方法MethodNameAsync()是一个好习惯,以使用户清楚该方法是异步运行的。但是,与SignalR相关且异步的所有事物都不会在其名称中带有异步信息。例如,OnConnected方法是异步的,但不是OnConnectedAsync()。

长话短说:您是否建议调用任何集线器方法public async Task MyMethodAsync()或仅调用public async Task MyMethod()?该方法的异步性对我的集线器的最终用户意味着什么吗?

1 个答案:

答案 0 :(得分:1)

请勿在其后缀Async,因为这会将实施细节泄漏给您的用户。

如果要通过项目中的分析器强制执行Async后缀,则可以在方法中放置一个[SuppressMessage(..., Justification = "RPC methods should not be suffixed with 'Async'."]属性。