.net - ASP.NET MVC 和 WCF

标签 .net asp.net-mvc wcf

我目前正在努力进入 MVC,但在我的“在某个时候学习”列表中,我也有 WCF。

我只是想知道 WCF 是否应该/可以在 MVC 应用程序中使用?背景是我想要一个桌面应用程序(.NET 3.5,WPF)与我的 MVC 网站交互,我想知道在两者之间传输数据的最佳方式是什么。我应该只使用特殊 View /让 Controller 返回 JSON 或 XML(使用 ContentResult)吗?

也许更重要的是,反过来说,我可以只调用特殊 Controller 吗?不确定授权在这种情况下如何工作。我可以使用 Windows 身份验证,或者(如果站点正在运行表单例份验证)让用户将他/她的凭据存储在应用程序中,但我基本上会在我的应用程序中创建一个 HTTP 客户端。因此,虽然 MVC => Application 看起来真的很简单,但 Application => MVC 似乎有点棘手并且可能用于 WCF?

我不是想在这方面暴力破解 WCF,但我只是想知道在 MVC 应用程序中是否确实存在 WCF 的良好用例。

最佳答案

WCF 服务在这种情况下可能有意义,但不要创建与您的 UI 一致的服务,而是创建与业务流程一致的服务。 IE。您将不会有一个返回每个页面的 View 数据的服务,您将有一个公开逻辑操作的服务。然后,您的站点可以调用 windows 客户端调用的相同服务,但您不必将 windows 客户端的设计与网站的设计结合起来。

而不是这个:

Windows 客户端 -> 服务 -> 网站

它应该是:

Windows 客户端 -> 服务

网站 -> 服务

关于.net - ASP.NET MVC 和 WCF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/217111/

相关文章:

.net - IronScheme 是解释还是编译?它是否受益于 .NET Framework 优化?

c# - KendoUI Grid InCell 编辑中的异常需要批量更新,批量设置为 false

asp.net-mvc - ASP.NET MVC 下拉列表

java - 使用 Metro 连接到 WCF 服务的问题 - HTTP 有效,HTTPS 无效

.net - 调整大小后如何使用 Expander 保持 WPF 窗口的大小适合内容

c# - 如何将写入 Stream 1 的内容通过管道传输到 Stream 2?

python - 从 suds.client 导入客户端失败

wcf - 如何以编程方式关闭 WCF 中的安全性

c# - 如何将 VB 项目转换为 C# 项目

asp.net-mvc - ASP.NET MVC 和 Expression XAML - 如何集成?