前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >修改asmx样式

修改asmx样式

作者头像
全栈程序员站长
发布2022-08-11 17:59:37
发布2022-08-11 17:59:37
1.5K0
举报

大家好,又见面了,我是你们的朋友全栈君。

今天看到一张图,asmx的WebService。长这样:

当时就感觉有意思,这个页面风格和我们平时的不一样,我们平时的WebService长这样:

我们如果在WebMetohd上面加注释,即 [WebMethod(Description = “注释”)],那么长这样:

那么问题就来了,第一张图里面的样式是如何实现的呢?在浏览器上进入调试模式观察,可以发现它的html和我们的有点不一样~~~~那么,意味着我们也去修改这个html就可以了。

然后打开一个简单的WebServce项目,发现找不到一个可以改html的地方,emmmmmmmmm。那么可以猜想是调用了一个默认的html。配置文件里面也没写,看来默认还是写死的。那就只有上网查资料了!

查了一些资料后,大概了解到了:

“在.net环境下用浏览器打开.asmx文件时,实际上是利用了.net提供的测试工具在测试WEB SERVICE,而WEB SERVICE本身一般是不提供GUI的,所以不必关心测试界面的效果,只要功能实现就可以了。测试界面的一些内容是由WEB SERVICE的属性决定的,如[WEBSERVICE(Description,Name,Namespace)],WebMethod[Description,MessageName];如果该测试界面的生成文件是:%SystemRoot%\Microsoft.Net\Framework\<version>\CONFIG\DefaultWsdlHelpGenerator.aspx,可是适当修改”

ok,然后再具体找,发现怎么改呢,看到网上这么一个答案:

“By default .Net framework provides a default DefaultWsdlHelpGenerator.aspx under

<windir>\Microsoft.Net\Framework\<version>\Config

you can override it in your application by change the web.config.

<?xml version=”1.0″ encoding=”utf-8″?>

<configuration>

<system.web>

<webServices>

<wsdlHelpGenerator href=”MyServiceDescriptionGenerator.aspx”/>

</webServices>

</system.web>

</configuration>

Hope this helps”

ok,问题就明确了,确实是调用了一个默认的aspx,并且我们可以通过配置

<webServices>

<wsdlHelpGenerator href=”MyServiceDescriptionGenerator.aspx”/>

</webServices>

的方式来指定调用那个界面。然后我找这个路径找了好久(我电脑上Framework版本太多了),后来转念一想,我何苦去找呢,我自己写一个,然后把配置路径配全路径就行了~

于是乎,我随便找了个DefaultWsdlHelpGenerator.aspx,然后复制出来改名为my.aspx(不改名也行,别和路径下同名文件冲突就行),改完后把配置项里面改动配置:

然后调试,发现确实是调用了我自己定义的界面。(我在body里面加了一行<h1>This is a Test<h1>)

如果想做到博文开头那样的效果,既是继续去修改html了,这些细节本博文就不讨论了。读者有兴趣可以自己去定义一个有特色的WebServce。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/130816.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年4月2,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档