Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Net核心3:API运行时的动态模型验证_C#_Asp.net Core_.net Core_Asp.net Core 3.1_Model Validation - Fatal编程技术网

C# Net核心3:API运行时的动态模型验证

C# Net核心3:API运行时的动态模型验证,c#,asp.net-core,.net-core,asp.net-core-3.1,model-validation,C#,Asp.net Core,.net Core,Asp.net Core 3.1,Model Validation,我们在数据库中有1000个小型查找表编辑器。每一行最多有几行。我们没有编写1000个API、服务和角度代理,而是在网格单元中创建了一个对象查找查看器/编辑器。小表,如ProductCodeLookup、AddressType、SupplyCategory、FurnitureType 此外,还有来自网页的API操作符,人们可以在其中查看并向查找表添加行。(见下面的图片链接) 问题来了,我们如何在API中对请求对象动态应用模型验证 前端验证正在进行中 但是,对于C#,我们希望所有LookupId和i

我们在数据库中有1000个小型查找表编辑器。每一行最多有几行。我们没有编写1000个API、服务和角度代理,而是在网格单元中创建了一个对象查找查看器/编辑器。小表,如ProductCodeLookup、AddressType、SupplyCategory、FurnitureType

此外,还有来自网页的API操作符,人们可以在其中查看并向查找表添加行。(见下面的图片链接) 问题来了,我们如何在API中对请求对象动态应用模型验证

前端验证正在进行中

但是,对于C#,我们希望所有LookupId和int类别的最大字符串请求成员数为1-100个字符,最大字符串请求成员数为255个字符,电子邮件格式为@email regex等。在选择表之前,我们可能不知道运行时对象请求的外观

[HttpPost("[Action]")]
public void AddObject(List<object> addListRequest, string lookupTableName)
{
    foreach (var addItem in addListRequest)
    {
        var addItemCast = addItem.ConvertObjectToTypeWithSerialization(atype);
        context.Add(addItemCast);
    }
}
[HttpPost(“[Action]”)
public void AddObject(列表addListRequest,字符串lookupTableName)
{
foreach(addListRequest中的var addItem)
{
var addItemCast=addItem.ConvertObjectToTypeWithSerialization(atype);
添加(addItemCast);
}
}
对于较旧的NETMVC,我们使用的是NETCore3API

我想有办法用新图书馆来做这件事