SOAPで、linqがエンティティ参照の完全なプロパティをエクスポートしない理由。この例では、ImagesReferenceのEntityKeyMemberのみをエクスポートし、Imagesエンティティの他のプロパティはエクスポートしません。
<images_likes>
<EntityKey>
<EntitySetName>Images_Likes</EntitySetName>
<EntityContainerName>WiredinEntities</EntityContainerName>
<EntityKeyValues>
<EntityKeyMember>
<Key>LikeId</Key>
<Value xsi:type="xsd:int">96</Value>
</EntityKeyMember>
</EntityKeyValues>
</EntityKey>
<LikeId>96</LikeId>
<Date>2012-07-27T09:00:35.697</Date>
<ImagesReference>
<EntityKey>
<EntitySetName>Images</EntitySetName>
<EntityContainerName>WiredinEntities</EntityContainerName>
<EntityKeyValues>
<EntityKeyMember>
<Key>ImageId</Key>
<Value xsi:type="xsd:int">26</Value>
</EntityKeyMember>
</EntityKeyValues>
</EntityKey>
</ImagesReference>
public static List<Images_Likes> GetLikes(int ImageId)
{
using (WiredinEntities context = new WiredinEntities("name=WiredinEntities"))
{
var items = from item in context.Images_Likes.Include("Images")
where item.Images.ImageId == ImageId
select item;
return items.ToList();
}
}