ASP.NET-禁用Web服务的主题

ASP.NET-禁用Web服务的主题,asp.net,themes,asmx,Asp.net,Themes,Asmx,我遇到了与此处所述相同的问题: 我在根web.config的元素中设置了一个默认页面主题,除了网站的其余部分外,它还应用于WebService.ASMX页面。我想阻止ASP.NET将主题应用于.ASMX页面 上面讨论中的答案是,您可以在.NET framework的根配置文件夹(C:\Windows\Microsoft.NET\framework\VERSION\CONFIG\DefaultWsdlHelpGenerator.aspx)中编辑“DefaultWsdlHelpGenerator.a

我遇到了与此处所述相同的问题:

我在根web.config的
元素中设置了一个默认页面主题,除了网站的其余部分外,它还应用于WebService.ASMX页面。我想阻止ASP.NET将主题应用于.ASMX页面

上面讨论中的答案是,您可以在.NET framework的根配置文件夹(C:\Windows\Microsoft.NET\framework\VERSION\CONFIG\DefaultWsdlHelpGenerator.aspx)中编辑“DefaultWsdlHelpGenerator.aspx”,并指定
,但这仅在您能够在服务器上访问该文件时才有效

我曾尝试向web.config添加一个
元素,该元素指向一个特定的.ASMX文件,但由于.ASMX页面仍在主题化,因此该元素似乎被忽略

是否有任何方法可以防止ASP.NET将应用程序主题应用于.ASMX文件,而该文件在不修改系统级“DefaultWsdlHelpGenerator.aspx”(如上所述)的情况下工作

编辑


我可以通过允许我的基本页面类型定义应用的主题来解决这个问题,但是即使我的解决方法是,我想知道是否有一种“正确”的方法来覆盖ASP.NET中这种相当荒谬的行为。

如果.asmx文件不在网站的根目录中,你不能在他们的文件夹中放置另一个web.config并删除其中的主题吗?

如果.asmx文件不在网站的根目录中,你不能在他们的文件夹中放置另一个web.config吗文件夹并删除那里的主题?

如何从web.config中删除该行,并在您的基本页面中添加一行(希望您有一行),以设置默认主题。如果仍要通过web.config进行管理,可以为此主题值添加appSettings条目

例如:

    protected override void OnPreInit(EventArgs e)
    {
        base.OnPreInit(e);
        this.Theme = <Enter Your Theme Here>;
    }
protectedoverride void OnPreInit(EventArgs e)
{
基于preinit(e);
this.Theme=;
}

如何从web.config中删除该行,并在您的基本页面中添加一行(希望您有一行),以设置默认主题。如果仍要通过web.config进行管理,可以为此主题值添加appSettings条目

例如:

    protected override void OnPreInit(EventArgs e)
    {
        base.OnPreInit(e);
        this.Theme = <Enter Your Theme Here>;
    }
protectedoverride void OnPreInit(EventArgs e)
{
基于preinit(e);
this.Theme=;
}

请注意,.asmx文件在任何意义上都不是“页面”。将它们放在受指令约束的文件夹中是不合适的,该指令会对“所有页面”采取某些操作

要么接受别人的建议,要么接受别人的建议


或者,最好停止使用ASMX,转到WCF。

请注意,.ASMX文件在任何意义上都不是“页面”。将它们放在受指令约束的文件夹中是不合适的,该指令会对“所有页面”采取某些操作

要么接受别人的建议,要么接受别人的建议


或者,更好的办法是停止使用ASMX,转而使用WCF。

理论上这是可行的,是的。但是,在此应用程序中,.ASMX文件位于根目录中。我正在寻找一个解决方案,不改变任何文件的物理位置。理论上,这是可行的,是的。但是,在此应用程序中,.ASMX文件位于根目录中。我正在寻找一个解决方案,不改变任何文件的物理位置。事实上,这是我正在使用的解决方案,但我只是觉得很奇怪,ASP.NET会以这种方式运行,因为人们永远不希望将其特定于应用程序的样式应用于为非页面生成的模板。事实上,这就是我正在使用的解决方案,但是我发现ASP.NET的这种行为非常奇怪,因为人们永远不希望将其特定于应用程序的样式应用于非页面的生成模板。尽管.asmx文件不是页面,但首先导致这种行为的是根级别的
元素。我本以为至少我可以用
覆盖它。尽管.asmx文件不是页面,但它是根级别的
元素首先导致了这种行为。我本以为至少我可以用
覆盖它。