SubSonic实体的MVC3应用程序?

问题描述

| 我开始编写执行基本搜索的MVC3应用程序。我已经创建了一个WCF服务,并公开了GetDataAsDataSet()方法,并在我的MVC项目中使用了该服务。目前,我认为该方法是最简单的,因为它仅返回一个数据集。我确实想添加GetDataAsEntity(),该函数返回稍后(或现在)通过SubSonic生成的实际数据库实体类型。 到目前为止,我知道如果我的服务返回的是这些实体的类型,则需要在MVC3项目的Models文件夹中拥有这些实体。但是,这些都需要以“模型”结尾吗? SubSonic还创建[entityname] Controller.cs文件-可以将它们放置在controllers文件夹中,并将实际的实体类重命名为[entityname] Models.cs吗? 我想在我的Models文件夹中使用这些文件,因为我想使用WCF服务,该服务最终将返回一个实体实体类型。 我可以很容易地得到第一个解决方案(返回一个简单的数据表),这是第二个选项,我需要一些帮助-从WCF服务中传回复杂类型,并在我的MVC3应用程序中使用它。 谢谢。     

解决方法

我认为您需要自定义SubSonic T4文件,并使所有生成的类具有
[DataContract]
[DataMember]
属性,然后WCF应该能够直接序列化从SubSonic读取的记录。