Orchard CMS 动态表单模块中的服务器端验证

Server Side Validation in Orchard CMS Dynamic Forms Module

我需要对使用动态表单模块构建的一些表单进行一些服务器端验证。最好的方法是什么?通过工作流程?

具体来说,我们在客户表单中收到垃圾邮件,我想过滤掉那些在消息字段中包含网址的邮件。

我最终在允许我将 C# 代码输入脚本字段的电子邮件操作之前向我的工作流程添加了一个决策。这是我在决策脚本字段中使用的代码。

var message =  "#{FormSubmission.Field:message}";
if (message.ToLower().Contains("http://") || message.ToLower().Contains("https://")) {
    SetOutcome("Spam"); 
}
else {
    SetOutcome("Real"); 
}

如果消息是真实的,我发送了电子邮件。如果没有,我就结束这个过程。