Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > 源码示例

【WPF小品】Silverlight中与数据库交互入门教程 -- 第二课

时 间:2013-07-18 10:10:04
作 者:煮江品茶   ID:10802  城市:武汉
摘 要:【WPF小品】Silverlight中与数据库交互入门教程 -- 第二课
正 文:

第二课 设计查询


  本课描述在如何在域服务类中,根据实际业务的需要设计查询。


示例文件:

点击下载此附件

 

上一课 下一课



15、打开Web项目中的域服务类文件MyDomainService.vb;

16、在域服务类中增加一个按班级ID查询学生表的查询方法,代码如下:

   '新增按班级ID的查询方法
   
    Public Function Get学生表By班级ID(ByVal id As Integer) As IQueryable(Of 学生表)
        Return Me.ObjectContext.学生表.Where(Function(x) CBool(x.班级ID = id))
    End Function


图示05:


17、转到MainPage.xaml文件中,从工具箱分别拖一个Lable控件和一个ComboBox控件到页面中,并调整位置大小等;

18、将ComboBox控件命名为cob班级ID;


图示06:


19、转到MainPage.xaml.vb文件中,编写和修改代码如下:

Imports System.ServiceModel.DomainServices.Client
Imports RIA示例.Web


Partial Public Class MainPage
    Inherits UserControl
    Private myD As New MyDomainContext

    Public Sub New()
        InitializeComponent()
        SetCob()
        SetDataGrid()

    End Sub


    Private Sub SetDataGrid()
        Dim id As Integer = 0
        If cob班级ID.SelectedValue Is Nothing = False Then
            id = CInt(cob班级ID.SelectedValue)
        End If

        Dim loadop As LoadOperation(Of 学生表) = myD.Load(myD.Get学生表By班级IDQuery(id))
        DataGrid1.ItemsSource = loadop.Entities()
    End Sub


    Private Sub SetCob()
        Dim loadop As LoadOperation(Of 班级表) = myD.Load(myD.Get班级表Query())
        cob班级ID.ItemsSource = loadop.Entities()
        cob班级ID.DisplayMemberPath = "班级"
        cob班级ID.SelectedValuePath = "班级ID"
    End Sub


    Private Sub cob班级ID_SelectionChanged(sender As Object, e As System.Windows.Controls.SelectionChangedEventArgs) Handles cob班级ID.SelectionChanged
        SetDataGrid()
    End Sub
End Class


20、按F5进行测试,测试效果是可从下拉列表框中选择班级,并筛选DataGrid中的数据。


图示07:



Access软件网QQ交流群 (群号:483923997)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助