2012-05-18 42 views
0

我已经用ASP构建了几个数据库驱动的网站,我试图将基本功能迁移到ASP.NET体系结构。在ASP.NET中实现ASP策略

我希望我的导航树中的每个链接都对应不同的函数,它将引导用户完成各种请求并提供顺序数据库驱动的响应和可能的后续问题。我通常使用查询字符串在SSI文件中执行代码的不同部分,从而在ASP中执行此操作。我的导航树中的每个链接基本上都调用一个不同的SSI文件。

在ASP.NET中,我认为我在Web表单基础知识,数据绑定,站点导航工具和母版页上有相当好的处理能力,但是我在整体设计图中遇到了问题。

我想让每个链接都将用户重定向到不同的页面吗?我的理解是,ASP.NET在维护状态信息方面要好得多,所以我不应该依赖查询字符串来将值传递给SSI文件,以执行每个任务的顺序部分。

我应该使用BLL和DAL来执行此操作和/或存储过程和托管代码吗?或者我可以更简单地使用ASP.NET网页来做这种事情,而不是使用Web表单?

反馈将包括参考文章和/或Web示例将不胜感激。谢谢!

+0

让我通过一个非常简单的高级概述来检查我的理解......实质上,您有一个类似向导的接口来实现ASP.NET吗? (根据以前的问题逐步处理各种要求和不同的后续问题是我从哪里得到的)这是正确的吗? – David

+0

请参阅下面的评论。我是新来的stackoverflow和无法响应... – Brubeck

回答

1

你不一定要放弃你的整个思维方式,并采取ASP.NET Web窗体。

自从2001年问世以来,我一直在使用ASP.NET Web Forms制作网站。但是我认为ASP.NET MVC对您来说会是一个更简单的过渡。我的意思是,有些事情在MVC中比在Web Forms中更困难。但总体而言,MVC将推广更多的网络友好型做法,而这正是我现在更喜欢的做法。

例如,Web窗体中的回发和查看状态的整个想法确实使许多事情变得更容易。但他们也有一个伤害搜索引擎优化和打破后退按钮的问题。 MVC不依赖任何这些,并且通过表单帖子,重定向和URL的处理方式来更好地改进用户体验。

我写过一篇文章,一段时间回来比较VS MVC Web窗体... http://swortham.blogspot.com/2009/10/when-to-use-aspnet-web-forms-and-when.html

+0

+1。就我个人而言,我不是MVC的粉丝,但那是我自己的问题。我是那些真正喜欢WebForms模型的bozos之一。 ;-)但是我认为你的建议很好,因为MVC确实看起来更像经典的ASP,而且我认为这也将是一个更简单的过渡。 – David

+0

@DavidStratton - 过去几周我一直在MVC中构建一个由300多个问题组成的问卷。在过去,我会在Web窗体中构建这种类似于形式的东西。但是这是MVC中现有系统的一部分。无论如何,有些事情更加困难。但是一旦我走了,这并不算太坏。是的,我确实认为来自传统ASP的人会更容易适应MVC。 –

+0

我无法提交答复。请在下面看到新的回复...... – Brubeck

0

基于我所看到的,它看起来就像你在多个ASP页得到了向导式导航,和你想要在ASP.NET(WebForms而非MVC)站点中使用向导式导航。

如果我误解了这一点,我会很乐意删除这个答案。

我推荐了Wizard control,(Video demos available all over the place),这将在一个页面上提供这样的接口,减少了很多的复杂性。没有必要跟踪跨页面的变量 - 这些都在一个页面中,因此始终可以访问。

向导页面倾向于拥有大量的代码和标记,但是权衡是所有向导功能都在同一个步骤中,而不是分散在各个文件中,并且在每个步骤中很明显会发生什么。采用多文件方法时,维护开发人员需要跟踪哪些页面帖子到哪个页面,并花费更多时间来理解设计。

+0

我对巫师控制的第一印象是,它可能不够灵活,无法满足我的需求,但随着我更多地使用它,我发现它可能会完成这项工作。所以陪审团仍然不在,我正在探索两种选择。 – Brubeck

+0

以下是我在旧的ASP应用程序中使用的[编辑呼叫历史记录功能](https://bscintra.buffalostate.edu/chsr/callTracker/Sample.ppsx)的示例。 Wizard Control或MVC是否足够灵活来实现这种功能? – Brubeck

0

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

+0

MVC 3验证在这里总结得相当不错... http://www.codeproject.com/Articles/249452/ASP-NET-MVC3-Validation-Basic –