问题标签 [isoneway]

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 投票
6 回答
13900 浏览

wcf - 在应用程序终止时,WCF 中 IsOneWay=true 的方法会发生什么

我有一个客户端应用程序,它会偶尔通知它的服务进度。对服务的方法调用标记为 IsOneWay=true,因为通知不需要任何返回值,我不想延迟。

客户端可能会向服务通知错误,然后它会终止。

问题是:单向方法调用发送消息后是否返回调用者代码?还是将消息排队,然后由另一个线程发送?

两个进程(客户端和服务)在同一台机器上,我注意到有时(当机器过载时)服务没有收到错误通知。我怀疑我提到的第二种选择会发生,但我不确定。

如果我是对的,我如何确保发送通知并保持方法单向?

0 投票
2 回答
719 浏览

wcf - WCF 服务 - 设置 IsOneWay=true 仍会导致客户端等待

对于我的一些服务方法,客户端应用程序不需要等待任何响应发送过来,
所以我只是用 装饰了这些方法IsOneWay=true,所以它们看起来像:

现在,当我从客户端应用程序调用此方法时,它似乎仍在等待该方法完成处理。

我错过了什么吗?

0 投票
1 回答
1099 浏览

silverlight - WCF:OneWay OperationContract 上的异常处理

我有一个带有 Silverlight 客户端和.NET 3.5 WCF服务的WCF双工服务。

我的情况是:在从服务器到客户端的双工推送 OneWay 操作期间,如果客户端通知处理程序中发生异常,则通道会静默发生故障,因此来自服务器的任何进一步双工调用超时并失败。(如此处解释的单向操作和异常

我的问题:

  1. 我可以只用FaultContracta装饰OneWay OperationContract,将异常包装在客户端并防止通道故障吗?
  2. 如果没有,还有什么其他方法可以捕获在从服务器进行双工推送期间客户端发生的异常?
0 投票
3 回答
1262 浏览

.net - 如何在没有 try-catch 的情况下检测 WCF 连接?

我使用 WCFnetNamedPipeBindingwsHttpBinding. 我想知道一种单向方法是否可以在不trying 的情况下成功执行。

编辑正如有人指出的那样,连接可以在给定的时刻成功并在下一次失败。我不在乎。我只想知道 WCF 是否可以替代trying。有什么方法可以检查服务是否已启动且可访问?

0 投票
1 回答
87 浏览

.net - One 方法中抛出的异常是否会导致通道出现故障?

如果我IsOneWay=true在一个方法中设置,其中抛出的异常会影响通道还是客户端?

0 投票
2 回答
460 浏览

wcf - WCF“一劳永逸”方法不允许主机执行按预期继续

我有一个 Windows 服务托管一个缓存大量数据的单例 WCF 服务。在启动 Windows 服务时,我正在执行以下操作:

我在服务合同中配置了如下方法:

我原以为会立即看到控制台中显示的第一个和第二个回声,但我实际看到的只是第一个回声。在我的“一劳永逸”方法完成它的长时间操作之前,不会显示第二行。

谁能解释一下后台发生了什么?

到目前为止我的理论:

wcf 服务在单例模式下的运行是否阻塞了托管它的服务?

它与 using 语句有关吗?

0 投票
1 回答
972 浏览

c# - 在 C# 控制台应用程序中等待单向 WCF 调用完成

我有一个 WCF Web 服务(不在我的控制之下),它实现了我需要通过 IsOneWay=true + 回调接口访问的功能,其中一种方法通知处理完成。它是这样编写的,因为它最初是为从 GUI 访问而设计的。

但是,我需要从控制台应用程序访问相同的方法以批量使用。目前,我实现这一点的粗略方法是将标志设置为 false,然后在调用 WCF 方法后,我实现了一个带有简短 Thread.Sleep() 调用的 while 循环。这显然有效,但似乎是实现最终结果的一种非常糟糕的方式。

我想知道这样做的正确方法是什么。注意:该服务不在我的控制范围内,并且刚刚通过 IDE 添加了引用,尽管我可以轻松地敲出代码实现等。

0 投票
1 回答
844 浏览

windows-phone-7 - 一种方式枢轴分页

我想基本上创建一个照片库。我有 x 个项目的列表,并固定了 3 页。(我这样做是因为我事先不知道我会有 4 件还是 1000 件)

当我在项目之间浏览并到达最后一个项目时,我想禁用向右的进一步分页,或者如果我到达开头则向左禁用。

这可能吗,怎么做?

提前致谢。

0 投票
0 回答
142 浏览

wcf - WCF 仅适用于 Web.config 检查版本

我有问题。我在 .Net 4.0 中创建了一个 WCF。这是使用的合同:

仅当检查 WCF 的 web.config 的版本(“签出”模式)时,该服务才能正常工作。当我进行“签入”时,web.config 文件切换并且服务不起作用。

但是,如果我“签出”web.config(没有任何更改),该服务将再次运行。

当未检查 web.config 的版本时,应用程序调用“进程”并继续而不抛出任何错误,但该服务永远不会执行。

任何想法?

0 投票
1 回答
825 浏览

wpf - WPF:将 Grid.Visibility OneWay 绑定到依赖项属性,将 OneWayToSource 绑定到视图模型 CLR 属性

我有一个GridVisibility属性绑定到父Expander控件的IsExpanded 。

每当Grid.Visibility更改时,我希望DataContext (视图模型)上的属性( MyProperty )相应地更改。

这是我的 XAML:

我尝试使用以下方式以编程方式在视图构造函数中设置绑定:

但是,这只是替换了与已在 XAML 中设置的Expander的绑定。

我考虑过翻转它,以便目标是我的视图模型,而源是网格(绑定到Visibility)并将MyProperty变成依赖属性。但是,我的视图模型不是DependencyObject,所以我不能这样做。

我尝试使用MultiBinding / MultiConverter将Grid.Visibility绑定到Expander.IsExpandedMyProperty,但这并没有达到预期的效果。当Grid.Visibility由于Expander.IsExpanded更改而更新时, MyProperty不会更改为Grid.Visibility

唯一可行的选择是在Grid上使用绑定到Expander.IsExpanded的附加属性,然后在附加属性更改时使用回调函数以编程方式更改Grid.VisibilityGrid.Visibility然后绑定到MyProperty。这似乎是一种混乱的方式,但我愿意接受建议。

我想我想要做的几乎就像一个双管齐下的绑定,其中两个绑定方向相反,一个来自依赖属性,另一个来自CLR 属性。

感谢您提供的任何帮助!