[英]Receiving “null” instead of null
I'm trying to pass a null argument to a web api controller but I'm getting "null" instead of null.
例如:我的路線應該是這樣的
[Route("api/student/GetStudent/{studentId}/{studentFname}/{studentLname}/")]
public Student GetStudent(int studentId,string studentFname,string studentLname)
{
//Code
}
請注意,至少用戶應該插入名字或姓氏,並且不需要兩者都有
在上面的代碼中,名字和姓氏都是必需的,但我不想要這個。 所以我把我的代碼改成這樣
[Route("api/student/GetStudent/{studentId}/{studentFname?}/{studentLname?}/")] public Student GetStudent(int studentId,string studentFname,string studentLname) { //Code }
正如我所說,當我調用此方法並為學生名字傳遞 null 參數時。 我得到“null”,當它傳遞給數據庫存儲過程時,它將作為一個值傳遞。
這很可能是因為該方法被稱為
api/student/GetStudent/xxx/null/something
null 在這種情況下是提供的,實際上是“null”。
你可能需要暴露
根據您的設置,您可以執行
api/student/GetStudent/IdHere?fname=xxx
(lname 將是null
)api/student/GetStudent/IdHere?lname=xxx
(fname 將是null
) (順便說一句。如果需要id
,我不確定你為什么要傳遞名稱部分)
我想您應該使用以下格式調用您的 API:
api/student/GetStudent/studentId=&studentFname=&studentLname=
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.