2010-05-15 78 views
2

我目前正在使用winforms,但想要编写一个应用程序,用户将在它们和数据库之间具有LAN/WAN。所以假设我需要使用WCF,如果我坚持使用WinForms作为用户界面,或者转到ASP.net并转到网页,那么这两种方法中的哪一种会更容易加速 对我来说呢?什么是更容易的rampup:ASP.net或WCF?

注意要使用实体框架。

回答

2

你在这里比较苹果和橘子。 ASP.NET是一个完整的Web应用程序框架(或更准确地说:其中两个 - WebForms和MVC)。 WCF是一组服务和支持体系结构 - 这是两套完全不同的功能和功能。

ASP.NET和Web开发提出了他们自己的一套挑战 - 当然还有一些好处。 Webforms试图与Winforms非常接近 - 将组件拖放到窗体上,将事件挂钩等。ASP.NET MVC使用模型 - 视图 - 控制器方法,并尝试更接近HTML金属,并为您提供更多控制您的HTML/CSS标记。如果您使用WCF和/或WCF数据服务,并且将所有业务逻辑,数据验证和数据访问封装到单独的程序集中,则可以随时分支出来,并稍后将ASP.NET Web UI添加到解决方案中。

学习如何使用WCF和WCF数据服务肯定不会而不是将您锁定在无法使用ASP.NET(如ASP.NET Webforms或ASP.NET MVC)作为前端的位置该解决方案的UI。

+0

感谢马克 - 所以要采用基于Web UI的方法(而不是使用WCF分发WinForms)似乎是一种更容易的加速方法?这是你暗示的吗? (即新手) – Greg 2010-05-15 21:32:04

+0

@Greg:不,这不是我所暗示的:-)我试图解决的是它不是“Winforms/WCF vs. ASP.NET” - 你完全可以在ASP中使用WCF。 NET也是如此,它也很有意义。使用WCF与您最终使用哪个UI层无关。 – 2010-05-16 07:43:18

1

Winforms将访问权限绑定到仅Windows机器上。

ASP.Net,您可以访问整个操作系统,包括像移动电话与浏览器等

此外,ASP.Net已经有足够好的安全内置设备。对于WCF,您需要创建自己的图层......我的意思是,即使存在加密/可靠性等,但仍需要有效实施它们。

+0

因此,听起来像新手向基于WinForms的应用程序提供了更多的工作(使用WCF),那么将使用ASP.net WebForms然后MasterGaurav交换到基于Web的交付方法? – Greg 2010-05-15 21:30:34