问题标签 [wcf-ria-services]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
791 浏览

silverlight - DomainDataSource - 在客户端过滤

在客户端过滤 DomainDataSource(DDS) 的最佳方法是什么?

我的 DDS 连接到 WCF Ria 服务并下载许多项目。我想在不同的控件中显示这些信息的一部分。例如,一些 ItemsControls 显示 DDS 中按各种值过滤的项目。我知道我可以为服务器上的每个控件和过滤器创建一个新的 DDS,但我宁愿只进行 1 次旅行。

我尝试使用 iValueConverter 进行过滤。例如

当控件第一次绑定数据但当 DDS 重新加载其数据时它们不会更新时,这可以正常工作。如果我删除转换器,ItemsControls 会按预期更新,但显然我没有得到过滤。

每次 DDS 更新时,我也可以在代码中手动进行过滤和绑定,但我不确定这是不是最好的方法。

有什么建议么?

0 投票
2 回答
708 浏览

silverlight - 从 Silverlight Toolkit DataForm 上的 DataFields 的 DescriptionViewer 部分回收空间

DataFieldDescriptionViewer部分用于显示 System.ComponentModel 的Description属性。DisplayAttribute作为生成表单中的工具提示。我不想使用此功能,尽管我可以通过使用样式将 DescriptionViewerVisibility 设置为 Collapsed 或将 DescriptionViewerStyle 设置为 null 来确保 UI 元素不可见,如下所示仍有空间保留在此元素的 DataField 布局。

这个空间在我的场景中是浪费,我想摆脱它。我希望此布局由DataField.Template属性公开,但是当我使用 Blend 编辑默认模板的副本时,布局不存在。

我正在使用 System.Windows.Controls.Data。DataForm.Toolkit,版本=2.0.5.0,来自WCF RIA Services Beta 业务应用程序 Silverlight 3 项目中的 Silverlight Toolkit 2009 年 10 月版。我正在使用 Visual Studio 2008 SP1。我知道有一个 2009 年 11 月的版本,但我在发行说明中看不到任何提及此更改的内容。

0 投票
2 回答
105 浏览

linq - Linq Contains 函数问题

我使用 Ria Service domainservice 进行数据查询。

在我的数据库中,有一个包含名字、姓氏的人表。然后我使用 EF/RIA 服务进行数据处理。

然后我创建一个过滤器视图模型来捕获用户输入,基于它的输入,我构造一个 linq 查询来访问数据。

在服务器端,person 的默认 DomainService 查询是:

在客户端,过滤器的 linq 查询类似于(我在这里使用包含函数):

生成的 linq 查询类似于(调试时,我明白了):

当我运行该应用程序时,我将“Smith”作为姓氏进行搜索,但结果与“Smith”完全无关!

如何解决?

0 投票
1 回答
1295 浏览

silverlight - 自动让视图模型更新域上下文并提交更改(Silverlight/RIA Services Nov beta)

我真的被困在尝试使用 MVVM 和 crud 数据网格实现 RIA 服务。我想我错过了一些关键的想法。我见过的所有示例都使用提交按钮或类似按钮将数据发送回客户端。我宁愿在添加/删除/修改一行后立即提交。我想到了几种方法:

  • 让我的 IEnuerable Itemsource 属性自动绑定到我的上下文的实体容器。我试过了,但我无法从属性中设置上下文的实体。
  • 捕获行更改事件并手动告诉我的上下文已更改项目。考虑到我的 Commodity 属性应该反映数据网格中的变化,这在 MVVM 设计中感觉不对。

此外,我如何告诉 RIA 服务它应该对特定的 crud 操作使用什么方法?这会发生在客户端还是服务器上?

请注意,我使用的是 ComponentOne 数据网格,但对于这个简单的示例,我认为它的行为与普通的 Silverlight 数据网格没有什么不同。

看法:

视图模型:

0 投票
2 回答
651 浏览

silverlight - 您可以直接从 Silverlight 使用实体框架吗?

我在 Silverlight 中看到的每个数据访问示例似乎都在使用 RIA 服务从后端获取实体。是否可以直接从 Silverlight 使用实体框架,或者这是不可能的,因此需要使用 RIA 服务?

与通过额外的 RIA 服务层相比,直接从 Silverlight 中针对 SQL Azure 数据库使用实体框架似乎是一种更高效、更灵活的数据处理方式。我在这里想念什么?

0 投票
2 回答
202 浏览

c# - 您可以使用 RIA 服务为实体属性添加安全性吗?

RIA 服务允许您向域服务方法添加属性,例如:RequiresRole("Admin")。这将自动检查调用该方法的用户是否具有正确的安全性。我想为实体上的属性做类似的事情。例如,仅允许“经理”角色中的用户更改“评分”属性,但任何用户都可以更改“评论”属性。这可能吗?

0 投票
10 回答
16140 浏览

wcf - WCF RIA 服务部署问题

我有一个非常简单的示例 silverlight 应用程序。我使用具有一个实体的实体模型向它添加了域服务。客户端应用程序只是在启动时加载实体中的所有行。当我在我的开发箱上运行它时,它按预期工作。但是,当我将它移动到我们的测试服务器时,我收到一个异常,提示找不到我正在调用的方法(查询“GetCTCStation”的加载操作失败。远程服务器返回错误。NotFound。)。当我与 Fiddler 更密切地检查客户端/服务器通信时,我发现请求将发送到http://[server url]/ClientBin/SilverlightApplication7-Client-Web-CTCService.svc/binary. 我将域服务添加到web项目的根目录,所以我不明白为什么客户端在ClientBin目录中寻找它。它显然不存在。我在这里做错了什么?我对 RIA 的 7 月预览版没有任何问题。


它是相对的,但在 Generated_Code 文件中自动处理。并且 webconfig 中没有要配置的内容。我在创建域服务时使用了默认设置。我尝试在实例化服务时显式设置 uri,但发生了相同的异常。

0 投票
1 回答
599 浏览

linq - 如何编写基于 ria 服务的 sum 计算?

为 SL 应用程序使用 ria 服务时,我可以发出以下异步调用以获取一组实体列表。

但是我想得到一些计算,例如 sum(Commission), sum(Salary),结果不是实体,只是一个标量值。我怎样才能做到这一点?

0 投票
2 回答
750 浏览

linq - 如何为基于 ria 服务的过滤器创建动态 linq 查询?

假设我有一个表 Person(PersonID, Name, ....)。然后我使用EF创建一个Entity模型,然后基于Ria Service创建DomainService。在客户端(sliverlight),我尝试为过滤功能创建一个动态 linq。我所做的是:

那也行。然后我还有另外两个电话表:

然后我想添加过滤器来匹配电话号码。linq查询q怎么写?

我可以通过编译,但是在运行应用程序时出现错误:不支持查询运算符“计数”

如何解决这个问题?

0 投票
1 回答
438 浏览

silverlight - Silverlight、RIA 服务、MVC2P2 = 无数据

我在升级当前项目以使用 RIA 服务时遇到问题。我添加了所有必要的 web.config 更改,但仍然没有运气。我一切都编译得很好,但是当我使用数据上下文点击页面时出现错误。我用提琴手调试,我在其中一个请求上得到了 404。我正在我的网格中取回标题,因此正在进行一些通信,但实际上没有数据通过。另一件需要注意的是,我的 MVC 正在运行 Windows 身份验证。我也有一个 clientaccesspolicy.xml。

Silverlight 中带有标头但没有数据的错误, 替代文字

提琴手的回应:

[HttpException]:找不到路径“/Services/EpicWeb-Services-LegacyDomainService.svc/binary”的控制器或未实现 IController。在 System.Web.Mvc.DefaultControllerFactory.GetControllerInstance(RequestContext requestContext,类型 controllerType)
在 System.Web.Mvc.DefaultControllerFactory.CreateController(RequestContext requestContext, String controllerName) 在 System.Web.Mvc.MvcHandler.ProcessRequest(HttpContextBase httpContext) 在 System.Web.Mvc.MvcHandler.ProcessRequest(HttpContext httpContext) 在 System.Web。 Mvc.MvcHandler.System.Web.IHttpHandler.ProcessRequest(HttpContext httpContext) at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)