C#信号数据通信
问题描述:
我想编写方法验证过程,它类似于Web API中提供的数据通信。C#信号数据通信
在网页API,我们可以验证对象,例如:
public class Numbers
{
[NumberOne]
public string Number1 { get; set; }
[NumberTwo]
public string Number2 { get; set; }
}
并且只要我们定义的属性和NumberOneAttribute
其NumberTwoAttribute
会是好的。
区别在于web api可以访问GlobalConfiguration.Configuration.Filters
,它看起来像signalr没有。
有无论如何通过属性验证请求?或者我需要遵循最坏的情况,验证调用方法中的每个输入?
谢谢, Ori。
答
在SignalR 2.2.x中没有实现这个的原生方式,但有一个project on GitHub that that adds a Validation Module in the SignalR pipeline。
基本上,为了使用它,你添加一个新的模块,管道:
GlobalHost.HubPipeline.AddModule(new ValidationModule());
然后,您可以像使用[Required]
属性为模型的属性,然后装饰与[Validate]
所需的方法属性。
请注意,这是验收项目的证明。
此致敬礼!
我不认为SignalR 2.2.x的开箱即用,但是有一个[GitHub上的项目,它完全符合您试图实现的目标。](https://github.com/AGiorgetti/ SignalR.Validation) –
@ radu-matei足够好,你可以发布它作为答案,我会接受 –