odata之如何在 WCF 数据服务 QueryString 中转义句点 (.)
不点
阅读:31
2024-02-06 11:00:25
评论:0
我有一个 WCF 数据服务服务,它公开一组 ICD代码。 WCF 提供访问的基础表和数据集的主键是 varchar
或 string
在 C# 中。
如果我有这样的查询,该服务可以正常工作:
http://somehost/someService.svc/IcdSet('001')
但是,如果 ICD 代码恰好有
.
在标识符中,服务失败。这是一个不起作用的示例(IIS 给出 404 - Not Found 响应):
http://somehost/someService.svc/IcdSet('001.1')
所以问题是 我怎样才能逃避这个时期或正确地将它传递给 WCF 数据服务 ?它必须将其解释为不同类型的过滤条件。
注:底层类的代码似乎与问题无关,但如果需要,我可以提供它。
编辑 :我目前的猜测是 IIS 正在尝试查找以
.1')
结尾的文件。然后产生 404 错误。但是我怎么能告诉 IIS 它不应该寻找文件,因为这些都是数据查询?
请您参考如下方法:
看看这个 http://blogs.msdn.com/b/peter_qian/archive/2010/05/25/using-wcf-data-service-with-restricted-characrters-as-keys.aspx
如果您使用 .Net 3.5 http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=5121,也可能会感兴趣
声明
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。