WCF REST模式下的UriTemplate路径问题
问题:在WCF4.0中,用UriTemplate进行表明路径参数的时候会出现问题
1.创建的项目是Service.Interface【4.0】和Service【4.0】还有Client【4.0】

2.代码如下 Interface
[ServiceContract]
public interface IEmployees
{
[WebGet(UriTemplate = "Add/{x}/{y}")]
double Add(double x, double y);
}

Service

program

appconfig

client还没有用到即发生错误
错误是
System.InvalidOperationException:“约定“IEmployees”中的操作“Add”具有非“字符串”类型的路径变量“x”。UriTemplate 路径段的变量类型必须为“字符串”。”

看网上的解决方案也没找到.
这个时候两个中解决方案,一种是直接把参数加载后面的
可以使用int等值类型数据.注意必须是参数,不能是uri路径的一部份.也就是说,你必须写成这样:
uritemplate = "?id=id"
public xxxx get(int id);
如果不想用,则表示暂时只实现了将所有的参数类型更改为string,不报错了
但是,在3.5下就不会出错,不知道为什么,有大神明白告诉一下
但是会有另外一个错误
System.InvalidOperationException:“ContractDescription“IEmployees”有零个操作;协定必须至少有一个操作。”

是因为接口里所有的方法都没有加[OperationContract],加上就OK了.
但是这个[OperationContract]还不能加在add上否则还是会报上面的错误

必须得

才可以
但是在4.0中即使加上[OperationContract] 也会出现刚刚的那个模板必须用字符串的错误,不知道是不是4.0改版了.

调用成功
WCF REST模式下的UriTemplate路径问题的更多相关文章
- [老老实实学WCF] 第十篇 消息通信模式(下) 双工
老老实实学WCF 第十篇 消息通信模式(下) 双工 在前一篇的学习中,我们了解了单向和请求/应答这两种消息通信模式.我们知道可以通过配置操作协定的IsOneWay属性来改变模式.在这一篇中我们来研究双 ...
- ActiveX IE保护模式下的低权限操作路径及Windows操作系统特殊路径
参考理解IE保护模式:https://blog.csdn.net/xt_xiaotian/article/details/5336809 文件帮助类: public class FileHelp { ...
- winform 承载 WCF 注意,可能不是工作在多线程模式下
[ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Multiple, InstanceContextMode = InstanceContextMo ...
- wcf_消息通信模式(下) 双工通讯
原文:[老老实实学WCF] 第十篇 消息通信模式(下) 双工 第十篇 消息通信模式(下) 双工 在前一篇的学习中,我们了解了单向和请求/应答这两种消息通信模式.我们知道可以通过配置操作协定的IsOne ...
- Self Host模式下的ASP. NET Web API是如何进行请求的监听与处理的?
构成ASP.NET Web API核心框架的消息处理管道既不关心请求消息来源于何处,也不需要考虑响应消息归于何方.当我们采用Web Host模式将一个ASP.NET应用作为目标Web API的宿主时, ...
- 烂泥:openvpn tun模式下客户端与内网机器通信
本文由秀依林枫提供友情赞助,首发于烂泥行天下 前两篇文章我们介绍了有关openvpn的搭建与配置文件的讲解,这篇文章我们再聊介绍下,在tun模式下openvpn客户端如何与内网机器通信的问题. 一.实 ...
- 曲线救国:IIS7集成模式下如何获取网站的URL
如果我们在Global中的Application_Start事件中访问HttpContext.Current.Request对象,如: protected void Application_Start ...
- MVVM模式下弹出窗体
原地址:http://www.cnblogs.com/yk250/p/5773425.html 在mvvm模式下弹出窗体,有使用接口模式传入参数new一个对象的,还有的是继承于一个window,然后在 ...
- Hadoop-2.X HA模式下的FSImage和EditsLog合并过程
补充了一下NameNode启动过程中有关FSImage与EditsLog的相关知识. 一.什么是FSImage和EditsLog 我们知道HDFS是一个分布式文件存储系统,文件分布式存储在多个Data ...
随机推荐
- QC内部分享ppt
Quality Center是一个基于Web的测试管理工具,可以组织和管理应用程序测试流程的所有阶段,包括制定测试需求.计划测试.执行测试和跟踪缺陷.此外,通过Quality Center还可以创建报 ...
- Apache Commons Beanutils 二 (动态Bean - DynaBeans)
相关背景 上一篇介绍了PropertyUtils的用法,PropertyUtils主要是在不修改bean结构的前提下,动态访问bean的属性: 但是有时候,我们会经常希望能够在不定义一个Java类的前 ...
- 7.28-说说对javaweb的感想吧
接触了几个月的java,和javaweb. 感想1:发现生活顿时充实了很多,时间照样在过,日落日出,但是手里面有学的,有可以让自己开心地码出理想的效果,这是很不错的结局. 发现自己再也不回去和伙伴们撸 ...
- Docker修改默认网段
因阿里云服务器VPC默认占用了172.16.0.0/16 网段,与Docker里的网段相同,导致Docker里无法连接VPC服务器.后来找到的解决方案是修改Docker的默认网段. 由于Docker默 ...
- 实验吧 这个看起来有点简单!&渗透测试工具sqlmap基础教程
题目地址:http://ctf5.shiyanbar.com/8/index.php?id=1 下载sqlmap,拖到python安装文件夹下面,在桌面创建sqlmap的cmd快捷方式,都不赘述. 教 ...
- css布局------上下高度固定,中间高度自适应容器
HTML <body> <div class="container"> <div class="header"></d ...
- IIS服务器SSL证书安装
在证书控制台下载IIS版本证书,下载到本地的是一个压缩文件,解压后里面包含.pfx文件是证书文件,pfx_password.txt是证书文件的密码. 友情提示: 每次下载都会产生新密码,该密码仅匹配本 ...
- 精选20道Java代码笔试题
1.运算符优先级问题,下面代码的结果是多少? public class Test { public static void main(String[] args) { int k = 0; int r ...
- 请输入经过encode编码的URL
美团门店映射: <?php $url = "http://manage.test.kdb.kudianbao.com/Branch/mt_mdysh1d"; $res = u ...
- canvas-4createPattern.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...