none
好久不连数据库了.Adapter和Reader,前者可以选多么? RRS feed

  • 问题

  • 好久没连数据库了,

    我的专业有:地理信息系统

    课程有:高等数学,线性代数....

    想找出所有记录...即根据专业选择所有的记录...大家都知道 TableAdapter的是类型化的,所有很多时候都想避免用Sql的 ExecuteReader什么的直接连...Adapter选择的数据,如果是 Single()获得数据好说...但是在这里多条...怎么选择哈...好久不连数据库了...忘了...不懂大家听懂不懂我说的意思...

    2013年6月18日 0:26

答案

全部回复

  • //专业对应的课程.
            private void combox_Major_SelectedIndexChanged(object sender, EventArgs e) {
                listBox_Course_Original.Items.Clear();  //清除先前课程.
                if(combox_Major.SelectedIndex == 0) {   //初始时为未选中状态.
                    return;
                }
                //未选择状态课程为空.
                CoursesTableAdapter courseAdapter = new CoursesTableAdapter();
                var table = courseAdapter.GetCourseByMajor(combox_Major.Text.Trim());
                if(table.Count <= 0) {
                    MessageBox.Show("该专业没有对应课程!");
                    return;
                }
                //Linq查询要先用Where指定,才能获取;而不能直接通过Select new.
                //如果选择(r => r.FMajor)则为Major.
                var datas = table.Select(m => m.FCourse);
                foreach(var data in datas) {
                    //course = new Courses(data.Major, data.Course, data.Credit);
                    listBox_Course_Original.Items.Add(data);
                    //course.StoreCredit(data.Id, data.Credit);   //存储课程学分.
                }
            }
    ar datas = table.Select(m => m.FCourse);
    //这里我想
    table.Where(m =>m.FCourse ==xx).Select(m => 
    new {
    Course =m.FCourse,
    Major = m.FMajor,
    Id = m.Fmajor
    })
    
    这样读取不了...
    因为我想在 选择专业的时候 对应出课程之后,
    在"单击课程"后还想显示 "学分"...
    所以我想在这里多选...


    2013年6月18日 1:20
  • 如果你是SqlDataReader,那么应该:

    while(reader.Read())
    {
        reader[0开始的为下标索引].ToString();  //赋值给……
        ………………
    }

    If you think one reply solves your problem, please mark it as An Answer, if you think someone's reply helps you, please mark it as a Proposed Answer

    Help by clicking:
    Click here to donate your rice to the poor
    Click to Donate
    Click to feed Dogs & Cats


    Found any spamming-senders? Please report at: Spam Report

    2013年6月18日 4:34
    版主