Web Services 错误消息:未找到页面无法创建类型“xxx”

uyto3xhc  于 2023-04-06  发布在  其他
关注(0)|答案(7)|浏览(388)

当我尝试浏览我的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
请帮帮忙。

hrirmatl

hrirmatl1#

我得到了同样的错误,在我的情况下,解决方案是在.asmx文件中使用全限定类名(带命名空间的类名)。

<%@ WebService Language="C#" CodeBehind="~/App_Code/AuthenticateUser.cs" Class="AuthenticateUser" %>

将成为

<%@ WebService Language="C#" CodeBehind="~/App_Code/AuthenticateUser.cs" Class="MyProjectName.AuthenticateUser" %>
jchrr9hc

jchrr9hc2#

另外,请检查以确保生成输出路径仅指向“bin\”文件夹。如果生成的DLL文件卡在“bin\Debug\AnyCPU”或“bin\Release\x86”下,则Web服务项目无法使用这些文件。
我和一位同事花了两个小时试图让一个Web服务项目在一个新的工作站上工作,而这个工作站在一台旧机器上工作得很好。
希望这篇文章能对使用Google的人有所帮助!

yruzcnhs

yruzcnhs3#

请检查您的所有dll是否都存在于Web服务文件夹中。我能够在一个名为“Beyond Compare”的工具的帮助下找到这个。我将Web服务目录的旧工作副本与新工作副本进行了比较。

but5z9lq

but5z9lq4#

我遇到了这个问题,我绞尽脑汁了好几天,在网上做了很多研究。这基本上是因为文件和类必须同名,即我从其他地方剪切了代码,类被称为fileUploader。文件被称为fileuploader. ashx。
所以,这就是导致我的问题的原因。当我将类重命名为fileuploader时,它工作得很完美。啊!!浪费了几天时间!

im9ewurl

im9ewurl5#

问题是ASP正在寻找一个名为AuthenticateUser的类,但找不到它。
在Visual Studio中,右键单击webservice文件(AuthenticateUser.asmx)并选择“View Markup”,这将让您找到错误所在的asmx文件的第1行,请查看这一行的末尾,在您的示例中

Line 1: <%@ WebService Language="C#" CodeBehind="~/App_Code/AuthenticateUser.cs" Class="AuthenticateUser" %>

检查Class是否与您为webservice指定的Public Class名称匹配。换句话说,您在创建此文件后是否将Class重命名为“AuthenticateUser”或其他名称?有时第1行中提到的class与您在webservice asmx文件中指定的class名称不匹配。
为了解决这个问题,你的webservice开头的那一行应该与第1行中提到的类匹配,看起来像这样:

Public Class AuthenticateUser

    ...your webservice code here...

End Class
x4shl7ld

x4shl7ld6#

删除网站/Tokhin/部分这样:
那么它将工作..

k7fdbhmy

k7fdbhmy7#

6天后我发现了这个错误。我和你有同样的错误:“Web服务分析器错误消息:无法创建类型'xxx'“我发现,当我上传发布文件的主机上,我把projectnam.dll在主根目录(wwwroot),然后我创建了bin文件夹中的主机,然后我把projectname.dll(在发布文件夹)和问题得到解决,我verrrrrrrrrrrrrryyyy高兴。“

相关问题