我有一個帶有 PHP 文檔的第三方 API,但我使用的是 C# 和 ASP.NET MVC。API 方法之一作為參數發送Fields。FIELDS是一個數組,其中包含ID存儲 int 值的字段。所以在 PHP 中它會是這樣的:$fields=array(ID=>4);在 C# 中將此類參數獲取到控制器方法的最佳方法是什么?我這樣做是這樣的:public class FieldsModel{ public int ID { get; set; }}[HttpPost]public string Test(FieldsModel[] FIELDS){ //some code goes here}此代碼有效,但也許有更好的解決方案將 PHP 命名數組映射到 C# 控制器參數?PS 實際上,FIELDS如果重要的話,數組總是只包含一個 ID。
1 回答

函數式編程
TA貢獻1807條經驗 獲得超9個贊
由于 php 數組可以用作 key,value 數據結構,當它序列化為 JSON 時,你會得到類似的內容:
{
"ID": 4
}
在 C# 中管理它的最簡單方法(知道 C# 主要用于編寫面向對象的代碼)是將 JSON 解析為一個對象,該對象包含每個 JSON 鍵的屬性。您還可以更改使用字段而不是屬性,如下所示:
public class FieldsModel
{
public int ID;
}
然而,不推薦第二種方法。
我認為您只會得到一個“Field”,因此您可以重寫您的 Test 端點以等待單個 FieldsModel,如下所示:
[HttpPost]
public string Test(FieldsModel fields)
{
//some code goes here
}
- 1 回答
- 0 關注
- 138 瀏覽
添加回答
舉報
0/150
提交
取消