【问题标题】:Do I need AJAX and ASP.NET for what I'm doing?我在做什么需要 AJAX 和 ASP.NET 吗?
【发布时间】:2010-01-10 02:38:49
【问题描述】:

简单的问题。我曾经在“经典” ASP 时代开发网站,现在当我被要求为家人或朋友做一个快速而肮脏的网站时,我仍然求助于直接 HTML/ASP 和一些基本的 CSS 和 Javascript - 我可以通过这种方式快速启动网站。但是,我收到了一些设计和开发一些付费网站的请求,并认为我应该赶上我的网络技能。我一直在为 Windows 应用程序使用 .NET 3.5、XAML/WPF 等,所以我在 .NET 上,我在 Web 端落后了。

问题:如果我想设计/编码一个在所有(至少是最近的)浏览器和平台上看起来都相同的网站,我应该使用 ASP.NET 和 AJAX 吗?网站上可能有一些数据库活动,但不多,所以我不需要企业级的多层可扩展架构......只是看起来不错并且可以在多个平台上工作而无需编写所有变体的东西每个浏览器。看了书店里所有的 ASP.NET 书籍后,似乎它们都主要关注数据和回发的东西。使用一些基本的、无聊的 html 和 javascript 并在需要的地方嵌入一些 Flash 仍然是一个合法的选择吗?

如果我需要澄清问题,请告诉我。提前感谢您的建议!

【问题讨论】:

  • 所有很棒的答案。迟来的感谢!我终于进入了 jQuery/AJAX/CSS/HTML/ASP 组合——与在记事本中调整 ASP 文件相比,这是一个更复杂、更强大、更令人愉快的世界!

标签: asp.net html asp-classic


【解决方案1】:

您的问题比您想象的要复杂,但让我尝试解决一些我认为相关的问题。

首先,网站的外观几乎完全取决于您使用的 HTML/CSS 以及您对网站前端的编码方式,并且仅略微取决于服务器技术。因此,如果您希望您的网站能够跨浏览器和平台运行,请学习按照web standards, with semantic markup 编写代码。 (搜索这些术语以获取更多信息)。

此外,ASP.NET 现在有两种风格:ASP.NET MVC 和普通 ASP.NET。如果您要进入 ASP.NET,我强烈建议您遵循 MVC 平台。它紧跟类似的技术(如 Ruby on Rails),并使您更容易过渡到其他 MVC 平台。此外,当您使用“拖放”控件时,MVC 平台不会像直接 ASP.NET 那样尝试输出尽可能多的预制 HTML。

其次,这实际上取决于您正在构建的网站,但直接的 JS(或 JS + jQuery)、CSS 和 HTML——除非你嵌入视频,否则请不要使用 Flash——实际上为许多基本站点工作。如果您需要在服务器上发生一些事情,PHP 是一个很好的平台。如果您正在使用高级数据库访问和程序流程,并且由于您已经熟悉 .NET,那就坚持下去吧……MS 有一些很棒的工具和资源可以帮助您。

最后,许多开发人员使用最喜欢的 CMS 或博客平台作为简单网站的后端,这些网站仍然需要轻松管理内容的能力。 Expression Engine (CMS) 和 WordPress (Blog/Lite-CMS) 经常被使用(都基于 PHP),但也有很多。

祝你好运!

【讨论】:

    【解决方案2】:

    我建议学习jQuery。这将为您的 JavaScript 提供一个独立于浏览器的抽象。

    ASP.NET 控件将以独立于浏览器的方式呈现其控件,但这并不意味着您的站点将自动独立于浏览器。您仍然需要知道元素在不同浏览器中的呈现方式有何不同。

    我还建议使用CSS Reset 工作表作为 CSS 的起点。

    总而言之,如果您一直在开发老式 ASP,那么您可能会非常喜欢 ASP.NET,因为它可以为您节省大量时间和循环。你也可以直接跳到ASP.NET MVC

    对于您的问题,如果您做的不仅仅是一个简单的宣传册网站,我会学习 ASP.NET。如果您有 .NET 经验和经典的 Web 开发经验,那么学习 ASP.NET 不会成为一个大障碍,而且非常值得努力。

    【讨论】:

      【解决方案3】:

      我同意Aaron Daniels' answer 关于学习 jQuery 的看法。 jQuery 对 JavaScript 和一些基于 CSS 的效果的跨浏览器兼容性有很大帮助。

      但是,您还应该考虑确保您的网站使用格式正确、有效的 HTML,并且不使用过多的 CSS 2+ 功能。这应该确保您的网站符合标准,这意味着它可以在一定程度上与 Firefox、Safari、Opera 甚至更高版本的 IE 兼容。您仍然需要对 IE 进行手动调整——它已经损坏太久了,MS 无法一次性正确修复它——因此请查看 conditional comments 为 IE 用户应用单独的样式表。

      AJAX 是一种方便的技术,用于“桌面化”您的网络应用程序。它为 Web 服务器提供了一种异步回调机制,因此您可以在浏览器窗口中来回传递数据而无需重新加载页面。例如,这就是投票按钮在 StackOverflow 上的工作方式。

      最后,就网站的外观而言,ASP.NET 对最终用户的体验并没有太大影响。它是一种服务器技术,可用于编写复杂的应用程序以通过 Web 传送到浏览器。话虽如此,MS 已经添加了一些额外的好处来使使用 AJAX 更容易一些。

      希望有帮助!

      【讨论】:

        猜你喜欢
        • 2015-09-23
        • 2016-03-12
        • 2013-07-22
        • 2010-11-06
        • 2019-04-26
        • 1970-01-01
        • 2011-06-17
        • 2013-07-05
        • 1970-01-01
        相关资源
        最近更新 更多