为什么IIS拒绝我的Code.Behind标记?

我创建了一个小型web服务,我运行它在Visual Studio Development Server,它运行良好。然后我决定运行它(仍然通过Visual Studio)到IIS。为什么IIS拒绝我的Code.Behind标记?

我的Webservice拒绝工作,直到我从asmx标记中的Webservice元素中删除Code.Behind属性。现在它完美无瑕地运行。

任何人都可以向我解释原因吗?

编辑:由于拒绝工作,我的意思是我有一个错误页面,说明它具有This page must have a <%@ webservice class ... %> directive。至于“代码在哪里”,我有一个包含该行的标记,以及包含类实现的asmx.cs文件。请记住,这段代码起作用了,现在没有这个元素也可以工作,所以VSDS和IIS之间的行为差​​异让我感到困惑。

回答:

页面或webservice指令中使用的CodeBehind属性在运行时不使用。它只被Visual Studio使用,所以它知道关联的.cs或.vb文件。

Web服务或页面的继承的类属性告诉它是在运行时使用的类。如果它是一个网站而不是Web项目,那么在运行时使用代码文件来查找页面的相关代码。

错误消息将帮助找出你遇到的问题。

以上是 为什么IIS拒绝我的Code.Behind标记? 的全部内容, 来源链接: utcz.com/qa/265463.html

回到顶部