C# 将静态列表复制到本地临时列表

C# 将静态列表复制到本地临时列表,c#,.net,C#,.net,你好,我有一些静态列表,我有很多websocket连接和上传这些列表。但在paribumiktarhesapama()函数中,我希望使用本地临时列表来不更改静态列表。但当本地列表发生任何变化时,它也会影响我的静态列表。我没有做任何作业,为什么它会改变,我该如何解决 static List<decimal> p_btcTlAskPrice = new List<decimal>(new decimal[2]); static List<decimal&

你好,我有一些静态列表,我有很多websocket连接和上传这些列表。但在paribumiktarhesapama()函数中,我希望使用本地临时列表来不更改静态列表。但当本地列表发生任何变化时,它也会影响我的静态列表。我没有做任何作业,为什么它会改变,我该如何解决

    static List<decimal> p_btcTlAskPrice = new List<decimal>(new decimal[2]);
    static List<decimal> p_btcTlAskQuantity = new List<decimal>(new decimal[2]);
    static List<decimal> b_btcUsdtBidPrice = new List<decimal>(new decimal[20]);
    static List<decimal> b_btcUsdtBidQuantity = new List<decimal>(new decimal[20]);
    /// and more list here...
是引用您传递的列表的赋值。您需要做的是创建paribuAmount的副本并存储该副本:

var tempParibuAmount = new List<decimal>(paribuAmount)
var tempParibuAmount=新列表(paribumount)
对您创建的每个临时列表执行此操作

        p_btcTlAskPrice[0] = 600;
        p_btcTlAskQuantity[0] = 60;
        b_btcUsdtBidPrice[0] = 100;
        b_btcUsdtBidQuantity[0] = 80;
        b_usdtTryBidPrice[0] = 7;
        b_usdtTryBidQuantity[0] = 500;

        p_btcTlAskPrice[1] = 650;
        p_btcTlAskQuantity[1] = 100;
        b_btcUsdtBidPrice[1] = 95;
        b_btcUsdtBidQuantity[1] = 50;
        b_usdtTryBidPrice[1] = 6.8m;
        b_usdtTryBidQuantity[1] = 10000;
        paribuMiktarHesaplama(p_btcTlAskPrice, p_btcTlAskQuantity, b_btcUsdtBidPrice, b_btcUsdtBidQuantity);
var tempParibuAmount = paribuAmount
var tempParibuAmount = new List<decimal>(paribuAmount)