Silverlight 4 WCF RIA 服务和 MVVM 没有那么简单

标签 silverlight mvvm silverlight-4.0 wcf-ria-services

[免责声明:我是 ASP.NET MVC 开发人员]

你好,

我正在寻找一些在 Silverlight 4 中使用 WCF RIA 实现 MVVM 模式的最佳实践。

我不打算使用 IoC 的 MEF 来定位我的 ViewModel。我想知道的是如何将 MVVM 模式与 Silverlight 4 和 WCF RIA 一起应用。

我不想使用其他东西,比如 Prism 或 MVVM Light 工具包。我在 Internet 上找到了许多示例,展示了将数据源拖放到 View 上并完成工作是多么美妙(它让我想起了我的第一次 VB6 开发)。

我尝试使用 WCF RIA 实现 MVVM,但它一点也不简单。如果我理解的话,MVVM 应该包含所有逻辑,以便对其进行单独的单元测试,但是当它与 WCF RIA 结合起来时,那就是另一回事了。我有以下问题。

  • 我可以使用生成的元数据作为模型吗?如果我从头开始编写所有内容,使用它会更容易。
  • 正如我所看到的,我可以获得数据的唯一方法是通过 DomainContext 或通过 View 中的直接绑定(bind)(本地资源)。我不希望 View 中的直接绑定(bind),根本不可测试。另一方面,我不能使用 DomainContext,它不会公开任何单个实体!!!我所拥有的只是可以绑定(bind)到数据网格的 EntitySet。如何从 ViewModel 将单个实体绑定(bind)到 DataForm ?
  • 如何将模型更新到数据库?
  • 如何从一个实体导航到它的项目集合。例如,如果我有一个公司实体,我想显示一个 DataForm 来更新实体信息和一个数据网格来显示公司地址。保存表单时,我想将信息保存到公司和地址信息,以了解哪个地址被选为事件地址。

  • 请帮助我了解如何做好。或者也许我应该放弃 WCF RIA 并从头开始使用 WCF?

    你怎么看 ?

    最佳答案

    您可能对此感兴趣 session .它解释了如何将 MVVM 模式与 RIA WCF 服务一起使用。

    关于Silverlight 4 WCF RIA 服务和 MVVM 没有那么简单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2733565/

    相关文章:

    silverlight - 自定义 XAML 属性

    c# - Prism MVVM - 将 subview 添加到父 View 而不使用区域和注入(inject),只需 XAML

    c# - Silverlight 页面检查用户是否登录

    silverlight - 您如何处理Silverlight 4中的验证严重性?

    silverlight - DataGridTextColumn - 如何绑定(bind) IsReadonly?

    c# - 如何从 ViewModel 适本地在 View 中运行触发器?

    mvvm - 从 Kendo UI MVVM ObservableArray 中删除所有项目

    安卓 MVVM : Activity with multiple Fragments - Where to put shared LiveData?

    silverlight-4.0 - 如何: animate a MVVM ViewModel property in Silverlight 4?

    silverlight - 如何从 Silverlight 4 中的 DataForm.Validating() 事件中删除一个或多个字段?