第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么我的 .NET Rest API 返回帶有額外子屬性的列表而不是 [..]?

為什么我的 .NET Rest API 返回帶有額外子屬性的列表而不是 [..]?

C#
慕尼黑5688855 2023-09-24 10:50:58
我想知道原因有一段時間了:public List<int> getTest(){   List<int> test = new List<int>();   test.add(1);   return test;}返回客戶端為:{   test: {            $id: randomnumber,            $values: [1]         }}代替{   test: [1]}我使用 .NET Framework 4.6.1 并像上面的代碼一樣初始化列表。通常這不是問題,因為在客戶端,您可以像測試一樣輕松地訪問 $values。但我無法釋懷,為什么它會這樣返回。并希望有人能給我一個令人寬慰的答案,說明為什么以及是否可以在沒有額外子屬性 $values 和 $id 的情況下返回。該函數(shù)在控制器類中從實現(xiàn)類中調(diào)用。        [HttpGet, Route("getTest")]        public List<int> getTest()        {            return implementationClass.getTest();        }
查看完整描述

3 回答

?
一只甜甜圈

TA貢獻(xiàn)1836條經(jīng)驗 獲得超5個贊

由于您已將 JSON 序列化設(shè)置配置為使用PreserveReferencesHandling.all,因此您的輸出與您的預(yù)期有很大不同。例如:


var list = new List<int> { 1, 2, 3 };


var json1 = JsonConvert.SerializeObject(list);

var json2 = JsonConvert.SerializeObject(list, 

    new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.All });

將為您提供 JSON 輸出的以下 2 種變體:


[1,2,3]

{"$id":"1","$values":[1,2,3]}

因此,您可以刪除配置,或者,如果您專門想為此方法更改它,則必須手動進(jìn)行轉(zhuǎn)換,例如:


public string getTest()

{

   List<int> test = new List<int>();

   test.add(1);

   return JsonConvert.SerializeObject(test);

}


查看完整回答
反對 回復(fù) 2023-09-24
?
當(dāng)年話下

TA貢獻(xiàn)1890條經(jīng)驗 獲得超9個贊

在 DotNet 中,您將始終獲得復(fù)雜類型的元數(shù)據(jù)屬性。

要清理 Json 結(jié)果,請?zhí)砑?json 忽略屬性,例如:

options.JsonSerializerOptions.ReferenceHandler?=?ReferenceHandler.IgnoreCycles


查看完整回答
反對 回復(fù) 2023-09-24
?
呼喚遠(yuǎn)方

TA貢獻(xiàn)1856條經(jīng)驗 獲得超11個贊

用這個。


    [HttpGet, Route("getTest")]

    public IHttpActionResult Get ()

    {

       return Ok(implementationClass.getTest());  // Returns an OkNegotiatedContentResult

    }


查看完整回答
反對 回復(fù) 2023-09-24
  • 3 回答
  • 0 關(guān)注
  • 181 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號