我有一个完美运行的asmx WebService,但是当我在浏览器中浏览它时返回一个空白页面。
当我浏览search.asmx
文件时,我没有得到通常的html格式描述的服务,其中包含允许您调用服务的测试表单。我得到的只是一个完全空白的页面。 (查看源不返回任何内容)。
在localhost(casini)和服务器(IIS 7.5)上都会发生这种情况。
有没有办法可以启用它?
...
<system.web>
<httpRuntime requestValidationMode="2.0" enableKernelOutputCache="false"/>
<webServices>
<protocols>
<add name="HttpGet"/>
<add name="HttpPost"/>
</protocols>
</webServices>
...
...
[WebService(Namespace = "http://mydomain.edu/something")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.Web.Script.Services.ScriptService]
public class SearchService : System.Web.Services.WebService {
public SearchService() {
}
[WebMethod(EnableSession = true)]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public SearchResponse Search(SearchFilter filter)
{
...
当我导航到wsdl search.asmx?wsdl
时,出现错误:
System.InvalidOperationException:无法反映方法搜索。 ---&GT; System.InvalidOperationException:反映'SearchResult'时出错。 ---&GT; System.InvalidOperationException:那里 是一个反映类型'SearchResponse'的错误。 ---&GT; System.InvalidOperationException:反映出错 财产'属性'。 ---&GT; System.InvalidOperationException: 反映类型'USpaceDataAttributes'时出错。 ---&GT; System.NotSupportedException:无法序列化类型的成员USpaceDataAttributes.attributes System.Collections.Generic.Dictionary`2 [[System.String,mscorlib, 版本= 4.0.0.0,文化=中立, PublicKeyToken = b77a5c561934e089],[SimpleTypeData,Entities, Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null]],因为它 实现IDictionary。
我很确定这是为什么我得到一个空白页面。
答案 0 :(得分:2)
尝试
<add name="Documentation"/>