小编rea*_*ath的帖子

SqlDataReader读入List <string>

我正在用C#编写一个方法来从WCF服务查询SQL Server Express数据库.我必须使用ADO.NET来执行此操作(然后使用LINQ重写它).

该方法接受两个字符串(fname, lname)然后从匹配记录返回"健康保险NO"属性.我想把它读成一个列表(还有其他一些要检索的属性).

当前代码返回一个空列表.我哪里错了?

public List<string> GetPatientInfo(string fname, string lname)
{
    string connString = "Data Source=.\\SQLEXPRESS;AttachDbFilename=C:\\Users\\xxxx\\Documents\\Visual Studio 2010\\Projects\\ADOWebApp\\ADOWebApp\\App_Data\\ADODatabase.mdf;Integrated Security=True;User Instance=True";

    SqlConnection conn = new SqlConnection(connString);

    string sqlquery = "SELECT Patient.* FROM Patient WHERE ([First Name] = '"+fname+"') AND ([Last Name] = '"+lname+"')";
    SqlCommand command = new SqlCommand(sqlquery, conn);
    DataTable dt = new DataTable();

    List<string> result = new List<string>();

    using (conn)
    {
        conn.Open();

        using (SqlDataReader reader = command.ExecuteReader())
        {
            while (reader != null && reader.Read())
            {
               dt.Load(reader); …
Run Code Online (Sandbox Code Playgroud)

c# sql ado.net wcf sql-server-express

9
推荐指数
1
解决办法
5万
查看次数

将<List <string >>值列入string [] []数组C#

我有以下两个变量:

        List<List<string>> result
        string[][] resultarray
Run Code Online (Sandbox Code Playgroud)

我想从结果中获取值并将其存储在resultarray中,如下所示:[["one","two"],["three"],["four","five",six"],["seven "],["八"]]等

我有以下代码:

        string[][] resultarray = new string[resultint][];
        int a = new int();
        int b = new int();
        foreach (List<string> list in result)
        {
            foreach (string s in list)
            {
                resultarray[b][a] = s;
                a++;
            }
            b++;
        }
        return resultarray;
Run Code Online (Sandbox Code Playgroud)

但是,在调试时,我在尝试递增a或b时得到"NullExceptionError:对象引用未设置为对象的实例".我也尝试将它们声明为:

    int a = 0
    int b = 0
Run Code Online (Sandbox Code Playgroud)

......这也行不通.我没有正确地声明这些或者它是否与foreach循环有关?

c# string list multidimensional-array

2
推荐指数
1
解决办法
1318
查看次数