首页 > 解决方案 > 如何在 C# 中验证图片子句?

问题描述

我正在使用EDI.Net nuget 包。在他们的Readme.md文件中,他们正在谈论“图片子句”:

图片子句取自 COBOL 语言及其处理表达数字和字母数字数据类型的方式。

我的模型如下所示:

[EdiMessage]
public class DeliveryNote
{
    [EdiValue("X(9)", Path = "RFF/0/1")]
    public string Identification { get; set; }
}

我希望使用这个EdiValue-DataAttribute(源代码)来验证我的模型。看起来他们已经在以某种方式在内部解析这些图片子句。

我还不知道如何验证我的模型。第一个明显的想法是使用 .NET Validation 类(Validator, ValidationContext, ...):

var deliveryNote = new DeliveryNote();
deliveryNote.Identification = null;

var context = new ValidationContext(deliveryNote, serviceProvider: null, items: null);
var validationResults = new List<ValidationResult>();
bool isValid = Validator.TryValidateObject(deliveryNote, context, validationResults, true);

似乎没有任何事情得到验证。

我的错误在哪里?你能验证那些图片条款吗?如果此 Picture 子句支持不是用于验证,它们的目的是什么?

标签: c#validationcobolediedi.net

解决方案


我的错误在哪里?你能验证那些图片条款吗?如果此 Picture 子句支持不是用于验证,它们的目的是什么?

图片子句描述数据元素的格式。您不验证图片子句,但您可以验证数据元素的内容——它的值。您可以使用用户文档中的图片子句和其他信息来确定验证标准。

之前的一篇文章谈到了什么是图片问题。该帖子还提供了一个链接,指向一个分段示例及其数据元素描述。


推荐阅读