是否有可能在MVC应用程序中使用Web服务

问题描述:

我对asp.net MVC很新颖。我正在使用MVC3,我想知道是否有可能将Web服务作为我的模型。我知道在MVC中,您创建,删除,编辑和细节的视图是自动生成的,但在Web服务中,它将是每个Web服务的一个视图。我正在努力完成奇怪的事情吗?这不是使用MVC的真正意义吗?我很难找到任何使我认为我在这里使用错误技术的例子。接受的答案将是一个链接到一个很好的教程或一个例子的好解释。我主要关心的是在事情可以自动生成时做额外的工作。所以我已经添加了Web引用,并且可以创建我的控制器并使用此引用自动生成一些内容?是否有可能在MVC应用程序中使用Web服务

是的,你可以在ASP.NET MVC中使用Web服务。在这种情况下,您的模型将是您生成客户端代理时从Web服务导入的类。但无论你的模型来自哪里,你都应该定义视图模型,这些视图模型是专门针对你的视图需求量身定制的类。然后,您将让您的控制器操作将视图模型传递给视图,而不是模型。控制器操作将负责查询数据源以检索模型(此数据源可以是任何想象得到的),将模型映射到视图模型类并将此视图模型传递给视图。