0

I've built several database driven web sites with ASP and I'm trying to migrate the basic functionality to an ASP.NET architecture.

I want to have each link in my navigation tree correspond to a different function that will step a user through various requests and provide sequential database driven responses and possible follow-up questions. I typically do this in ASP by using the query string to execute different parts of the code in an SSI file. Each link in my navigation tree basically calls a different SSI file.

In ASP.NET I think I have a pretty good handle on web form basics, data binding, site navigation tools and master pages, but I'm having trouble with the overall design picture.

Do I want to have each link redirecting the user to different pages? My understanding is that ASP.NET is much better at maintaining state information and so I shouldn't have to rely on the query string to keep passing values to an SSI file to do sequential parts of each task.

Should I be using BLL and DAL to do this and/or stored procedures and managed code? Or could I do this sort of thing more simply with ASP.NET web pages, as opposed to web forms?

Feedback that would include a reference article and/or web example would be greatly appreciated. Thanks!

4

3 回答 3

1

您不一定要放弃整个思维方式并采用 ASP.NET Web 窗体。

自 2001 年 ASP.NET Web 表单问世以来,我一直在使用它制作网站。但我认为 ASP.NET MVC 对您来说会更容易过渡。我的意思是,有些事情在 MVC 中比在 Web 窗体中更难。但总的来说,MVC 将促进更多的网络友好实践,这是我现在更喜欢的。

例如,Web 窗体中的回发和视图状态的整个想法无疑使很多事情变得更容易。但他们也有伤害 SEO 和破坏后退按钮的问题。MVC 不依赖任何这些,并且通过处理表单帖子、重定向和 URL 的方式更容易改进用户体验。

不久前我写了一篇比较 MVC 与 Web 表单的文章... http://swortham.blogspot.com/2009/10/when-to-use-aspnet-web-forms-and-when.html

于 2012-05-18T21:44:06.590 回答
0

根据我所看到的,您似乎已经在多个 ASP 页面上进行了向导式导航,并且您希望在 ASP.NET(WebForms 而非 MVC)站点中进行向导式导航。

如果我对此有误解,我很乐意删除此答案。

我建议使用Wizard 控件到处都有视频演示),它将在一页中提供这样的界面,从而降低了很多复杂性。无需跨页面跟踪变量 - 全部在一个页面中,因此始终可以访问。

向导页面确实往往有很多代码和标记,但要权衡的是所有向导功能都在一个节奏中,而不是分散在文件中,而且每一步发生的事情本质上是显而易见的。使用多文件方法,维护开发人员需要跟踪哪个页面发布到哪个页面,并花更多时间了解设计。

于 2012-05-18T21:44:13.600 回答
0

关于 MVC vs Web Forms 的文章非常有趣,尽管在看了一些培训视频后,我觉得编码与 ASP 有很大不同。(我也看到的大多数示例都涉及 C#,尽管我看到一些使用 VB,这是首选,因为我已经在短时间内学习了很多新东西。)另外,我想知道 MVC 是否会让我使用验证工具,这在该项目的不同方面非常必要,该项目涉及几种不同且相当长的表格。鉴于我已经投入了大量时间来学习 ASP.NET,我想知道我是否应该多走一英里(或两英里)并学习如何创建业务对象 (BLL) 和数据层 (DAL )。

于 2012-05-21T19:40:46.623 回答