【发布时间】:2011-05-30 01:33:35
【问题描述】:
我编写了一个使用 SubSonic 进行数据检索的基本 WCF 服务。
发布服务后,我在 C# 应用程序中使用它。当调用使用该 SubSonic 查询的方法时,我从数据库中取回正确数量的对象,但它们都不包含数据库属性及其值。它看起来只有 SubSonic 属性。
SubSonic DAL 包含在 WCF 服务项目中引用的单独项目中。
WCF 服务接口:
[OperationContract]
GeoLocationCollection GetGeoLocations(long websiteID);
工人方法:
public GeoLocationCollection GetWebsiteGeoLocations(long websiteID)
{
GeoLocationCollection locationsCollection = new Select()
.Where(GeoLocation.Columns.WebsiteID).IsEqualTo(1)
.From(GeoLocation.Schema)
.ExecuteAsCollection<GeoLocationCollection>();
return locationsCollection;
}
GeoLocationCollection 和 GeoLocation 都已自动使用 [Serializable] 进行修饰。
服务消费如下:
MyService.MyServiceClient client = new MyService.MyServiceClient();
var result = client.GetWebsiteGeoLocations(1);
foreach (MyService.GeoLocation location in result)
{
// do stuff
}
再一次,为什么我在位置上看不到我的任何实际表属性/值?
【问题讨论】:
标签: c# wcf subsonic wcf-client datacontract