Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.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# 将数据表转换为我的列表<;T>;_C#_Sqlite_Xamarin - Fatal编程技术网

C# 将数据表转换为我的列表<;T>;

C# 将数据表转换为我的列表<;T>;,c#,sqlite,xamarin,C#,Sqlite,Xamarin,DataTable tb=newdatatable()至列表对象列表=新列表 想法就在这里,但是forceach中的dt有一个错误(dt中的var obj) 执行读取器 阅读课程 创建类实例 将这些实例收集到列表中 像这样的 foreach (var obj in dt) { var item = new Details(); item.ID = obj.ID;

DataTable tb=newdatatable()
列表对象列表=新列表

想法就在这里,但是forceach中的dt有一个错误(dt中的var obj)

  • 执行读取器
  • 阅读课程
  • 创建类实例
  • 将这些实例收集到
    列表中
  • 像这样的

                foreach (var obj in dt)
                {
                    var item = new Details();
                    item.ID = obj.ID;
                    item.Dosage = obj.Dosage;
                    item.Drug = obj.Drug;
                    item.Patient = obj.Patient;
                    item.Date = obj.Date;
    
                    results.Add(item);
                }
    
    //用于从查询中收集记录的列表
    列表=新列表();
    ...
    cmd.CommandText=sql;
    //完成:执行读卡器;将IDisposable包装为使用
    使用(SqliteDataReader rdr=cmd.ExecuteReader()){
    //完成:读取每个游标的记录
    while(rdr.Read()){
    //完成:将每个记录转换为MyClass实例
    MyClass项=新的MyClass();
    //TODO:分配属性
    item.Property1=转换为字符串(rdr[0]);
    item.Property2=转换为32(rdr[1]);
    ...  
    //完成:最后,将创建的所有Intance收集到列表中
    列表。添加(项目);
    }      
    } 
    ...
    
    Convert究竟如何转换?将所有值从datable传递到objectlist那么您尝试了什么?
    详细信息的字段是什么?数据表的字段是什么?详细信息有自己的类,属性Id、剂量、药物、患者和日期,数据表从我的选择查询select*from Details中获取其所有值;转换在很大程度上取决于数据库表数据类型,您缺少表scructure的信息。顺便说一句,xamarin标签看起来与您的问题无关。您是男性,您是如何键入这些内容的?:)
    
                foreach (var obj in dt)
                {
                    var item = new Details();
                    item.ID = obj.ID;
                    item.Dosage = obj.Dosage;
                    item.Drug = obj.Drug;
                    item.Patient = obj.Patient;
                    item.Date = obj.Date;
    
                    results.Add(item);
                }
    
       // List which will be used to collect records from the query
       List<MyClass> list = new List<MyClass>();
    
       ...
       cmd.CommandText = sql;
    
       //DONE: execute reader; wrap IDisposable into using
       using (SqliteDataReader rdr = cmd.ExecuteReader()) {
         //DONE: read each cursor's record
         while (rdr.Read()) {
           //DONE: Turn each record into MyClass instance
           MyClass item = new MyClass();
    
           //TODO: Assign properties
           item.Property1 = Convert.ToString(rdr[0]);
           item.Property2 = Convert.ToInt32(rdr[1]); 
           ...  
    
           //DONE: Finally, collect all the intances created into the list 
           list.Add(item);
         }      
       } 
       ...