Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 何时使用wcf和asp.net?_C#_Asp.net_Wcf - Fatal编程技术网

C# 何时使用wcf和asp.net?

C# 何时使用wcf和asp.net?,c#,asp.net,wcf,C#,Asp.net,Wcf,我想做一个使用数据库的应用程序,可以在数据网格中显示信息,用按钮执行命令等等。我想在局域网内和局域网外都这样做 我想我有两个选择。创建一个桌面应用程序,该应用程序使用wcf连接服务以访问数据库。第二个选择是创建一个aso应用程序,这样我就可以通过internet使用任何浏览器访问数据库 这两个选项是一个好的解决方案吗?wcf和asp.net的优缺点是什么 什么时候使用asp.net和什么时候使用wcf?当您只有一个客户端,并且您只需要通过LAN和internet访问它时,开发asp.net应用程

我想做一个使用数据库的应用程序,可以在数据网格中显示信息,用按钮执行命令等等。我想在局域网内和局域网外都这样做

我想我有两个选择。创建一个桌面应用程序,该应用程序使用wcf连接服务以访问数据库。第二个选择是创建一个aso应用程序,这样我就可以通过internet使用任何浏览器访问数据库

这两个选项是一个好的解决方案吗?wcf和asp.net的优缺点是什么


什么时候使用asp.net和什么时候使用wcf?

当您只有一个客户端,并且您只需要通过LAN和internet访问它时,开发asp.net应用程序的开销就更少了。这是因为您不需要设置配置和保护所需的额外服务。另一方面,为ASP.NET应用程序创建一个好的UI可能比仅仅创建一个WinForm的WPF应用程序要困难得多(取决于您的UI需求)

但是…。如果你正在计划未来的新客户呢?可能是一个(本地)移动应用程序或另一个(windows/web)客户端,用于不同需求的不同用户组?然后web服务会给您带来一些优势

例如,您想为一些CRUD操作创建一个新的Windows Phone应用程序(在web应用程序的上瘾中)


当您在web应用程序中编写所有数据库逻辑和业务规则时,您不能在Windows Phone中直接使用它。好的,如果程序集与.NET framework概要文件兼容,您可以使用它。但是如果你想创建一个Android应用程序而不使用Xamarin或类似的东西呢。这样,您就无法使用web应用程序中的程序集,需要再次重写逻辑……当您拥有web服务(例如REST web服务)时,您可以为所有数据库和(共享)业务逻辑调用该服务。你不需要关心它是否工作正常。正如您可能看到的,可维护性也是web服务的一个优势,因为所有的逻辑都集中在服务中。

桌面与web的争论是无穷无尽的。但归根结底,桌面UI更容易编码和维护,而web是一个
浏览器地狱,每个浏览器以不同的方式呈现UI。如果你在HTML5+Javascript(+jQuery)方面有很好的技能,也许你可以在web上获得一个不错的UI,有点类似于一个糟糕的桌面应用程序。如果您采用XAML方式,UI没有限制,但您仅限于Windows。没有iPhone,没有Mac,没有android,什么都没有。仅供参考,它是“asp.net”,而不是“asp”。嗯……从手机上访问web应用程序和从桌面web浏览器上访问web应用程序一样容易……我同意你的看法,但我的目的是给出一些使用web服务的利弊。我试图用一个移动应用程序的例子来说明这一点。当然,您可以在移动设备上使用web应用程序,但根据您的需要,在某些情况下,本机应用程序可能是更好的选择。