小编Pau*_*hou的帖子

访问Azure VM上的Internet

接下来,我部署了一个工作者角色,它将连接到互联网并尝试访问某些网站(例如:) http://somewebsite.redmond.corp.microsoft.com/en-us/library/.

它成功访问我在模拟器上运行的开发机器上的网站.但是在我部署我的工作角色的Azure虚拟机上,它无法访问网站.我尝试在IE浏览器上打开虚拟机的网站,它也无法.

您是否遇到过类似的问题?你怎么处理它?

azure azure-worker-roles

5
推荐指数
1
解决办法
4720
查看次数

在执行合同操作期间调用回调

我正在Azure上编写WCF服务.

在我的服务中,我需要在执行合同操作期间调用回调.当我尝试这样做时,将抛出异常并且客户端将被锁定.我认为这是因为通道打开合同操作,调用当前通道中的回调会锁定线程,对不对?我想为这种情况获得解决方案.

这是超时异常消息:

发送到net.tcp://127.255.0.0:8000/MytestWCFService的请求操作未在配置的超时(00:00:59.9889989)内收到回复.分配给此操作的时间可能是较长超时的一部分.这可能是因为服务仍在处理操作,或者因为服务无法发送回复消息.请考虑增加操作超时(通过将通道/代理强制转换为IContextChannel并设置OperationTimeout属性)并确保该服务能够连接到客户端.

编辑:代码示例

[ServiceContract(Namespace="testnamespace")]   
public interface ICallback   
{   
    [OperationContract(IsOneWay=true)]   
    void Callbackmethod();   
}  
Run Code Online (Sandbox Code Playgroud)

然后我在服务端实现IContract:

[ServiceBehavior(InstanceContextMode=InstanceContextMode.Single,   
    ConcurrencyMode=ConcurrencyMode.Reentrant,   
    AddressFilterMode=AddressFilterMode.Any)]   
public class WCFService : IContract   
{      
   public int Add(int a, int b)   
   {   
       int result = a + b;  
       ICallback callback = OperationContext.Current.GetCallbackChannel<ICallback>();   
       callback.Callbackmethod();   
       return result;   
   }   
}   
Run Code Online (Sandbox Code Playgroud)

我正在回拨当前频道,它是一个双工频道.

wcf asynchronous-wcf-call wcf-callbacks

3
推荐指数
1
解决办法
1098
查看次数