设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 2234|回复: 3
打印 上一主题 下一主题

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

[复制链接]
跳转到指定楼层
1#
发表于 2013-7-18 11:23:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 todaynew 于 2013-7-18 11:34 编辑

第二课 设计查询

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

示例文件:

上一课 下一课

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
 楼主| 发表于 2013-7-18 11:24:17 | 只看该作者
本帖最后由 todaynew 于 2013-7-18 11:25 编辑

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

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

   '新增按班级ID的查询方法
    <Query(IsComposable:=False)>
    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:


3#
 楼主| 发表于 2013-7-18 11:24:37 | 只看该作者
本帖最后由 todaynew 于 2013-7-18 11:26 编辑

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

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

图示06:



4#
 楼主| 发表于 2013-7-18 11:24:53 | 只看该作者
本帖最后由 todaynew 于 2013-7-18 11:26 编辑

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:




您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-2 10:45 , Processed in 0.095824 second(s), 28 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表