Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/265.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# 带有';Id';以.NET内核的名义_C#_Asp.net Core_.net Core - Fatal编程技术网

C# 带有';Id';以.NET内核的名义

C# 带有';Id';以.NET内核的名义,c#,asp.net-core,.net-core,C#,Asp.net Core,.net Core,我确实通过从表单获取数据来放置/发布查询。我的意思是: public async Task<IActionResult> Post([FromForm] Model model) { ... } 公共异步任务发布([FromForm]模型){…} 在这个模型中我有属性int?FromId 当我尝试验证ModelState时,出现以下错误: “值'null'对于FromId无效。” 我没有这个属性的任何属性 如果我将属性从id更改为从更改为,则它可以正常工作 原因是什么?如何解决这

我确实通过从表单获取数据来放置/发布查询。我的意思是:

public async Task<IActionResult> Post([FromForm] Model model) { ... }
公共异步任务发布([FromForm]模型){…}
在这个
模型中
我有属性
int?FromId

当我尝试验证
ModelState
时,出现以下错误:

“值'null'对于FromId无效。”

我没有这个属性的任何属性

如果我将属性
从id
更改为
更改为
,则它可以正常工作


原因是什么?如何解决这个问题?

我无法回答您的问题,只能说MVC中的名称很重要,而且当系统在自己的操作中使用某些文本时,名称并不总是很明显。如果这有帮助,请参见:您是否将请求中的值按字面意义发送
null
?这是我重现您错误的唯一方法,但是字符串
“null”
当然不能转换为
int?
。您的屏幕截图证实了我之前的评论。您正在传递无法转换为
int?
的字符串
null
。换句话说,这里的问题是你的客户端,它正在发送错误的数据。所有通过的值都是字符串。字符串
“true”
“false”
被转换为相应的
bool
值。当您有一个
int
时,它实际上是一个字符串,例如
“1”
,它被转换成一个数字,如果不能转换成
int
,则会失败。字符串
“null”
没有任何特殊含义-您需要从请求中排除您的
FromId
(或者在您的屏幕截图中保留为空,例如
bcc
)。