Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.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# MS SQL数据库的动态数组_C#_.net_Arrays_Linq_Global Variables - Fatal编程技术网

C# MS SQL数据库的动态数组

C# MS SQL数据库的动态数组,c#,.net,arrays,linq,global-variables,C#,.net,Arrays,Linq,Global Variables,我是C#.NET的新手,我在想,如果我可以在上面的代码中使用一个动态数组,我是否需要声明一个全局数组,比如-->“public static string[]row;”,这样我就可以通过调用从这个函数存储的数据以另一种形式使用这个数组字符串,这会在C#中发生吗 我在这里需要帮助,请任何擅长c#…数组的人。要获得所需的结果,您只需再做一些工作。我使用列表解释您的解决方案 首先为一个查询结果创建一个类: private void getRRvalue(string DELRRNO)

我是C#.NET的新手,我在想,如果我可以在上面的代码中使用一个动态数组,我是否需要声明一个全局数组,比如-->“public static string[]row;”,这样我就可以通过调用从这个函数存储的数据以另一种形式使用这个数组字符串,这会在C#中发生吗


我在这里需要帮助,请任何擅长c#…

数组的人。要获得所需的结果,您只需再做一些工作。我使用
列表
解释您的解决方案

首先为一个查询结果创建一个类:

private void getRRvalue(string DELRRNO)
        {
            try {

            DBSFCDataContext SFC = new DBSFCDataContext();
            var query = (from i in SFC.POP10500s where i.POPRCTNM == DELRRNO select new { PONO = i.PONUMBER, DATEREC = i.DATERECD, VENDID = i.VENDORID, ITEMCODE = i.ITEMNMBR, QTYBAGS = i.QTYBAGS, QTYSHIP = i.QTYSHPPD, DEPT = i.TRXLOCTN });
            foreach (var r in query)
            {
               string[] row = { 
                               DELRRNO,
                               r.PONO,
                               Convert.ToDateTime(r.DATEREC).ToString(),
                               r.VENDID,
                               r.ITEMCODE,
                               r.QTYBAGS.ToString(),
                               r.QTYSHIP.ToString(),
                               r.DEPT
                               };

                //glbVariables.getRRNO = ;
                //glbVariables.getPONO = ;
                //glbVariables.getRRdateRec = ;
                //glbVariables.getVendID = ;
                //glbVariables.getItemNO = ;
                //glbVariables.getQtyBags = ;
                //glbVariables.getQtyShipped = ;
                //glbVariables.getLocnCode = ;
            }
            SFC.Connection.Close();
        }
        catch (Exception ex)
        { MessageBox.Show(ex.Message.ToString()); }
    }
在给定的代码中,创建一个
OneRowData
类型的
列表
,并将其设置为
public static
,以便从类外访问它:

    public class OneRowData
        {
            public string DELRRNO;
            public string PONO;
            public string DATEREC;
            public string VENDID;
            public string ITEMCODE;
            public string QTYBAGS;
            public string QTYSHIP;
            public string DEPT;
        }
现在,您只需在任何地方调用
列表
,即可按如下方式获取数据:

foreach (var r in query)
            {
               OneRowData Obj = new OneRowData();
               //assing values to them
               Obj.DATEREC = Convert.ToDateTime(r.DATEREC).ToString();
               Obj.DELRRNO = DELRRNO;
               Obj.DEPT = r.DEPT;
               Obj.ITEMCODE = r.ITEMCODE;
               Obj.PONO = r.PONO;
               Obj.QTYBAGS = r.QTYBAGS.ToString();
               Obj.QTYSHIP = r.QTYSHIP.ToString();
               Obj.VENDID = r.VENDID;
               //then add the object to your list
               QueryResults.Add(Obj);
            }

你这里所说的
动态
是什么意思?如果数组的长度是
动态的
?只需将此方法中的“查询”作为列表或IEnumerable返回,每一行都将包含您需要的数据,然后您就可以以另一种形式使用它。返回此方法数组的查询字符串[]我在此函数中构造的行将用于另一个表单,该表单具有与我在此函数中放置的数据查询相同的数据查询,如上图所示。。那会发生吗?我应该使用什么函数或方法?谢谢Shaharyar。。。这段代码真的很有帮助
foreach (var r in query)
            {
               OneRowData Obj = new OneRowData();
               //assing values to them
               Obj.DATEREC = Convert.ToDateTime(r.DATEREC).ToString();
               Obj.DELRRNO = DELRRNO;
               Obj.DEPT = r.DEPT;
               Obj.ITEMCODE = r.ITEMCODE;
               Obj.PONO = r.PONO;
               Obj.QTYBAGS = r.QTYBAGS.ToString();
               Obj.QTYSHIP = r.QTYSHIP.ToString();
               Obj.VENDID = r.VENDID;
               //then add the object to your list
               QueryResults.Add(Obj);
            }
foreach (OneRowData Row in QueryResults)
            {
                //Row.DATEREC
                //Row.DELRRNO
                //call them like this and use as you need
            }