.net里惊现坑爹对象。。。

相当之稳重 2012-02-12 05:05:21
或许是小弟无知了。。但确实是发现个非常奇怪的事情。其中涉及到的对象有四个:
WebRequest , WebResponse ,StreamReader,StreamWriter 。

我用WebRequest 和 WebResponse 两个对象模拟请求了另外一个网页A,后用StreamReader,StreamWriter 获取了其HTML源码并将其另存为一个静态页 。。

奇怪的事情发生了,在我请求的那个网页里 有个两个Label控件是这样的

<asp:Label ID="Label1" runat="server" Font-Size="20px"></asp:Label>

和 <asp:Label ID="Label2" runat="server" ForeColor="#999999"></asp:Label>

直接运行网页A的时候 两个Label显示的样式为

<span id="Articles1_Label1" style="font-size:20px;">测试1</span>

和 <span id="Articles1_Label2" style="color:#999999;">测试2</span>


而另存为HTML的时候就坑爹了。。居然是

<span id="Articles1_Label1">测试1</span> 和

<span id="Articles1_Label2"><font color="#999999">测试2</font></span>

注意上面红色的部分,其中一个style直接没了,另一个变成了font标签。。关键我是获取的运行后的HTML啊。。而且这部分代码是肯定没问题的,就算有问题这种现象也太离谱了点吧。。。暴汗。。。有高人解释下不。。

...全文
250 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
bu在服务区 2012-02-17
  • 打赏
  • 举报
回复


兄弟...如果你外面再套几个控件的话~~~~~~~~~~~~~你会更惊讶滴 ~~~~~~哈哈 ~~~


erictang2003 2012-02-17
  • 打赏
  • 举报
回复
HtmlTextWriter 用这个
相当之稳重 2012-02-17
  • 打赏
  • 举报
回复
额 不懂啊。。。
xuStanly 2012-02-15
  • 打赏
  • 举报
回复
在webrequest里设置一下headers看有没有用?
相当之稳重 2012-02-15
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 xustanly 的回复:]

引用 2 楼 sp1234 的回复:

asp.net会根据你的浏览器端的不同而产生不同的html。但是你写的这个,我没有验证过。


这个情况在1.1时代碰到过,panel控件在IE下解成div在火狐下解成table,火狐不记得是2.x还是3.x的版本.
后来因为基本不用web控件了也就没再去研究这个问题了.
[/Quote]

好吧。。现在更云里雾里了。。不管它解析成什么吧。至少ID值是按照固定的命名规则的就行了。不然css都应用不到了。
xuStanly 2012-02-15
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 sp1234 的回复:]

asp.net会根据你的浏览器端的不同而产生不同的html。但是你写的这个,我没有验证过。
[/Quote]

这个情况在1.1时代碰到过,panel控件在IE下解成div在火狐下解成table,火狐不记得是2.x还是3.x的版本.
后来因为基本不用web控件了也就没再去研究这个问题了.
相当之稳重 2012-02-15
  • 打赏
  • 举报
回复
没人了么?。
相当之稳重 2012-02-12
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 sp1234 的回复:]

asp.net会根据你的浏览器端的不同而产生不同的html。但是你写的这个,我没有验证过。
[/Quote]

根据浏览器端的不同而产生不同的html?!那我生成静态页用模拟请求的方法是不是存在很大问题啊?。。换几个浏览器又会有很多css应用不到的毛病么?果然还是得模板替换的方式生成静态啊。。
  • 打赏
  • 举报
回复
asp.net会根据你的浏览器端的不同而产生不同的html。但是你写的这个,我没有验证过。
相当之稳重 2012-02-12
  • 打赏
  • 举报
回复
后来把那个 style 莫名其妙没了的 Label 改成了

<asp:Label ID="Label1" runat="server" CssClass="fontsize"></asp:Label>

另写了个css就好了。。但这啥原因实在有点摸不着头脑。。

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧