当我尝试浏览我的Web服务时,出现了解析器错误。
已经找到了这么多的答案,但没有一个对我有帮助。如果有人能引导我到一个有用的链接,我可能会忽略,这将是很大的帮助。
以下是场景:
我有Web服务内置VS-2010(框架4.0)托管在IIS 7.5使用“ASP.NET v4.0经典”应用程序池.这用来工作正常,直到我重新安装它.它开始显示下面的错误
解析器错误
**说明:**解析该请求所需资源时出错,请查看以下具体解析错误详情,并对源文件进行相应修改。
分析器错误消息:无法创建类型“AuthenticateUser”。
源错误:
第一行:〈%@ WebService Language=“C#”CodeBehind="~/App_Code/AuthenticateUser.cs”Class=“AuthenticateUser”%〉
源文件:/WebService 101/Services/AuthenticateUser.asmx**行:**1
版本信息:Microsoft .NET Framework版本:4.0.30319;ASP.NET版本:2.0.50727.3053
请帮帮忙。
7条答案
按热度按时间hrirmatl1#
我得到了同样的错误,在我的情况下,解决方案是在.asmx文件中使用全限定类名(带命名空间的类名)。
将成为
jchrr9hc2#
另外,请检查以确保生成输出路径仅指向“bin\”文件夹。如果生成的DLL文件卡在“bin\Debug\AnyCPU”或“bin\Release\x86”下,则Web服务项目无法使用这些文件。
我和一位同事花了两个小时试图让一个Web服务项目在一个新的工作站上工作,而这个工作站在一台旧机器上工作得很好。
希望这篇文章能对使用Google的人有所帮助!
yruzcnhs3#
请检查您的所有dll是否都存在于Web服务文件夹中。我能够在一个名为“Beyond Compare”的工具的帮助下找到这个。我将Web服务目录的旧工作副本与新工作副本进行了比较。
but5z9lq4#
我遇到了这个问题,我绞尽脑汁了好几天,在网上做了很多研究。这基本上是因为文件和类必须同名,即我从其他地方剪切了代码,类被称为fileUploader。文件被称为fileuploader. ashx。
所以,这就是导致我的问题的原因。当我将类重命名为fileuploader时,它工作得很完美。啊!!浪费了几天时间!
im9ewurl5#
问题是ASP正在寻找一个名为AuthenticateUser的类,但找不到它。
在Visual Studio中,右键单击webservice文件(AuthenticateUser.asmx)并选择“View Markup”,这将让您找到错误所在的asmx文件的第1行,请查看这一行的末尾,在您的示例中
检查Class是否与您为webservice指定的Public Class名称匹配。换句话说,您在创建此文件后是否将Class重命名为“AuthenticateUser”或其他名称?有时第1行中提到的class与您在webservice asmx文件中指定的class名称不匹配。
为了解决这个问题,你的webservice开头的那一行应该与第1行中提到的类匹配,看起来像这样:
x4shl7ld6#
删除网站/Tokhin/部分这样:
那么它将工作..
k7fdbhmy7#
6天后我发现了这个错误。我和你有同样的错误:“Web服务分析器错误消息:无法创建类型'xxx'“我发现,当我上传发布文件的主机上,我把projectnam.dll在主根目录(wwwroot),然后我创建了bin文件夹中的主机,然后我把projectname.dll(在发布文件夹)和问题得到解决,我verrrrrrrrrrrrrryyyy高兴。“