Я пытаюсь вернуть простой объект (который был создан в EDMX с EF 4) через операцию WebGet в моей службе данных WCF. Я могу видеть объект, но свойство, являющееся объектом, не заполняется (в данном случае DisplaySize пусто, даже если я его установил. Я планирую сделать вызов базы данных, чтобы заполнить его из не -EF сгенерированная таблица, потому что мы еще не перенесли все данные в новую схему (пожалуйста, сделайте вывод о типах объектов из этого)
[WebGet]
[SingleResultAttribute]
public Display GetDisplay(int displayId)
{
Display foundDisplay = new Display();
foundDisplay.DisplaySize = new DisplaySize() { Id = 1, Width = 1024, Height = 768, Dimensions = "1024 X 768" };
foundDisplay.Id = displayId;
return foundDisplay;
}
URL-адрес, который я использую: http://localhost:1354/services/EDMDataService.svc/GetDisplay?displayId=1
XML от звонка:
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<entry xml:base="http://localhost:1354/services/EDMDataService.svc/" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns="http://www.w3.org/2005/Atom">
<id>http://localhost:1354/services/EDMDataService.svc/Displays(1)</id>
<title type="text"></title>
<updated>2010-11-12T19:34:29Z</updated>
<author>
<name />
</author>
<link rel="edit" title="Display" href="Displays(1)" />
<link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/DisplaySize" type="application/atom+xml;type=entry" title="DisplaySize" href="Displays(1)/DisplaySize" />
<link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/Address" type="application/atom+xml;type=entry" title="Address" href="Displays(1)/Address" />
<category term="DataModels.Display" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme" />
<content type="application/xml">
<m:properties>
<d:DisplaySizeID m:type="Edm.Int32">0</d:DisplaySizeID>
<d:DisplayTypeID m:type="Edm.Int32">0</d:DisplayTypeID>
<d:TimeZoneID m:type="Edm.Int32" m:null="true" />
<d:Facing m:null="true" />
<d:PanelNumber m:type="Edm.Int32" m:null="true" />
<d:DisplayTemplateTypeID m:type="Edm.Int32">1</d:DisplayTemplateTypeID>
<d:DisplayGUID m:null="true" />
<d:RegistrationKey m:null="true" />
<d:FirmwareVersion m:null="true" />
<d:Id m:type="Edm.Int32">1</d:Id>
<d:Base m:type="DataModels.Base">
<d:Title>test</d:Title>
<d:Summary>Description would go here</d:Summary>
<d:DataCenterSiteID m:type="Edm.Int32">0</d:DataCenterSiteID>
</d:Base>
</m:properties>
</content>
</entry>