2010-11-11 69 views
0

在IIS 7.5中的我“启用协议”配置我的asp.net网站“http,net.pipe”。IIS 7.5配置的网站,支持断点续传,net.pipe调用WCF服务

注: net.pipe配置完成后调用网站(SOA)中的另一个模块。

每一件事情能正常工作与简单的asp.net & net.pipe服务调用调用其他模块。但是,当我试图调用RIA service from silverlight 4我获得以下错误

The provided URI scheme 'net.pipe' is invalid; expected 'http'. 
Parameter name: context.ListenUriBaseAddress 

如何配置我的网站在HTTP & net.pipe配置工作?

+0

请检查您的SL代码,你在SL中使用httpbinding?你能告诉我们你的SL代理生成代码吗,所以我们可以更好地找到你的问题的解决方案。 – 2010-11-11 03:32:30

+0

SL使用自定义二进制绑定。如果我在IIS中禁用net.pipe,silverlight RIA服务工作正常。但启用http&net.pipe后,它不起作用。 – kayak 2010-11-11 03:44:38

+0

我的问题是相同的,因为这一个http://social.msdn.microsoft.com/Forums/sv-SE/wcf/thread/cdff7a49-ebe3-4732-aaa4-50dd32670caf – kayak 2010-11-11 03:56:14

回答

1

我有新的REST API WCF同样的问题。不得不筛选net.pipe,在自定义服务主机工厂,这里是代码

public class FilteredServiceHostFactory : HttpServiceHostFactory 
{ 
    private static readonly List<string> _allowedSchemes; 
    static FilteredServiceHostFactory() 
    { 
     _allowedSchemes = new List<string> {Uri.UriSchemeHttp, Uri.UriSchemeHttps}; 
    } 
    protected override ServiceHost CreateServiceHost(Type serviceType, Uri[] baseAddresses) 
    { 
     baseAddresses = baseAddresses.Where(uri => _allowedSchemes.Contains(uri.Scheme)).ToArray(); 
     return base.CreateServiceHost(serviceType, baseAddresses); 
    } 
}