ASP.NET - 常见问题

当我使用 ASP.NET 时,我发现我总是会遇到一些意料之外的事情,并且需要很长时间才能进行调试。我认为,对于那些“奇怪的错误”情况,拥有这些综合列表将非常有用,并且可以扩展我们对平台中奇怪的知识。

所以:回答你的“问题之一”!

我会开始: 在 ASP.NET (VB) 下,在 try/catch 块内执行 Response.Redirect 不会停止当前 Response 的执行,这会导致针对同一个 Session 执行两个并发 Response。

请先 登录 后评论

10 个回答

Bob Dizzle

自定义控件的生命周期与同名的页面生命周期事件不完全匹配。

请先 登录 后评论
Bob Dizzle

不要在页面初始化事件之后动态添加控件,因为它会破坏视图状态树。

请先 登录 后评论
Sklivvz

如果您有重音字符,请勿使用记事本编辑您的 web.config,它会用错误编码替换它。不过看起来会一样。只是您的应用程序不会运行。

请先 登录 后评论
mattruma

Viewstate ...如果您正在使用它...如果您不注意它可能会失控。

请先 登录 后评论
Joel Coehoorn

您根本无法引用应用程序根文件夹上方的任何内容。

请先 登录 后评论
Joel Coehoorn

我必须维护的所有代码看起来仍然像是用 vb6 编写的,完全不了解新样式。

我说的是 CreateObject() 之类的东西,过度

请先 登录 后评论
Joel Coehoorn

自定义控件仅在构建控件时由设计器支持在构建使用该控件的页面时支持,但不能同时支持。

请先 登录 后评论
Joel Coehoorn

必须跳过障碍才能将 .ClientID 属性导入 javascript。

如果生命周期的渲染阶段创建一个脚本,为每个服务器控件设置一个 var,该脚本与自动初始化为 clientID 值的控件同名,那就太好了。或者也许有一些方法可以轻松触发此操作。

嗯...我敢打赌我可以通过反射自己设置一个方法。

请先 登录 后评论
Thunder3

(VB.NET) 如果您通过 Property 的 Get 访问器将 Object 发送到带有 ByRef 关键字的函数中,它实际上会尝试使用 Property 的 Set 访问器更新对象。

例如:

UpdateName(ByRef aName as String)

UpdateName(Employee.Name) 将尝试使用 Employee 的 Name 属性上的 Set 来更新名称。

请先 登录 后评论
Joel Coehoorn

整个生命周期的东西。

并不是我认为它有任何问题,只是您会惊讶于在理解它之前开始从事大型 ASP.Net 项目的人数之多,而不是反之亦然。因此,它变成了一个陷阱。

请注意,我说的是大型项目:我认为与生命周期达成协议的最好方法是先自己处理一些较小的项目,如果不这样做并不重要你把他们搞砸了。

请先 登录 后评论
  • 10 关注
  • 0 收藏,341 浏览
  • Thunder3 提出于 2022-09-27 02:29